title: Downloading attachments to directory with IMAP in PHP, randomly works
body: <p>I found PHP code online to download attachments to a directory using IMAP from here. <a href="http://www.nerdydork.com/download-pop3imap-email-attachments-with-php.html" rel="noreferrer">http://www.nerdydork.com/download-pop3imap-email-attachments-with-php.html</a></p>
  
  <p>I modified it slightly changing</p>
  
  <pre><code>        $structure = imap_fetchstructure($mbox, $jk);
          $parts = ($structure-&gt;parts);
  </code></pre>
  
  <p>to</p>
  
  <pre><code>        $structure = imap_fetchstructure($mbox, $jk);
          $parts = ($structure);
  </code></pre>
  
  <p>to get it to run properly, as otherwise I got an error about how stdClass doesn't define a property called $parts. Doing that, I was able to download all the attachments. I tested it again recently though, and it didn't work. Well, it didn't work 6 times, worked the 7th, and then hasn't worked since. I'm thinking it has something to do with me screwing up the parts handling, since count($parts) keeps returning 1 for each message, so it's not finding any attachments I think.</p>
  
  <p>Since it downloaded the attachments at one point with no issues, I feel confident that the area things are getting screwed up is right here. Before this block of code is a for loop that goes through each message in the box, and after it is loop that just goes through $parts for each imap structure. Thanks for any help you can provide. I looked at the imap_fetchstructure page on php.net and can't figure out what I'm doing wrong.</p>
  
  <p>Edit: I just double-checked the folder after typing up my question and it all popped up. I feel like I'm going nuts. I hadn't run the code since a few minutes before I started typing this, and it doesn't make sense to me that it would take this long to trigger. I have some 800 messages in the mailbox, but I figured since it printed my statement at the very end of the PHP that all of the file creation work was done.</p>