title: SMTP server response: 501 Must specify to address &lt;address&gt;
body: <p>Cannot understand why I am getting this error - both to &amp; from email addresses are valid (I use them daily) so cannot figure out how this is happening - any help would be appreciated.</p>
  
  <p>NOTE: This is working in production but is throwing errors in dev. I have stricter config in dev.
  NOTE: I am testing locally on PC using smtp4dev</p>
  
  <pre><code>    $to = 'myemail@mydomain.com.au';
      $cc = 'myemail@mydomain.com.au';
      $from = 'myemail@mydomain.com.au';
      $filename = 'Invoice#'.$order_id.'.pdf';
      $message = file_get_contents(ROOT_DIR.'admin/include/email-body.html');
      $content = chunk_split(base64_encode($pdf_file));
      $uid = md5(uniqid(time()));
  
      $headers  = 'MIME-Version: 1.0' . "\r\n";
      $headers .= 'To: '. $to . "\r\n";
      $headers .= 'Cc: '. $cc . "\r\n";
      $headers .= 'From: '. $from . "\r\n";
      $headers .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
      $headers .= "This is a multi-part message in MIME format.\r\n";
      $headers .= "--".$uid."\r\n";
      $headers .= "Content-type:text/html; charset=iso-8859-1\r\n";
      $headers .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
      $headers .= $message."\r\n\r\n";
      $headers .= "--".$uid."\r\n";
      $headers .= "Content-Type: application/pdf; name=\"".$filename."\"\r\n";
      $headers .= "Content-Transfer-Encoding: base64\r\n";
      $headers .= "Content-Disposition: attachment; filename=\"".$filename."\"\r\n\r\n";
      $headers .= $content."\r\n\r\n";
      $headers .= "--".$uid."--";
  
      if (mail($to, $subject, $message, $headers)) {
        print "SUCCESS";
      } else {
        print "FALIED";
      }
  </code></pre>
  
  <p>Here is the result if I print the variables on the mail() line:</p>
  
  <pre><code>mail(&lt;myemail@mydomain.com.au&gt;, Company - Invoice#12451, "",
  MIME-Version: 1.0 
  To: &lt;myemail@mydomain.com.au&gt; 
  Cc:
  From: Customer Service &lt;myemail@mydomain.com.au&gt; 
  Content-Type: multipart/mixed;
  boundary="2c88ff549e67c83e7a6e3df0bffe9dc9"
  
  This is a multi-part message in MIME format.
  --2c88ff549e67c83e7a6e3df0bffe9dc9 Content-type:text/html;
  charset=iso-8859-1 Content-Transfer-Encoding: 7bit
  
  ---&gt; html message body stripped &lt;---
  
  
  --2c88ff549e67c83e7a6e3df0bffe9dc9 Content-Type: application/pdf;
  name="Invoice#12451.pdf" Content-Transfer-Encoding: base64
  Content-Disposition: attachment; filename="Invoice#12451.pdf"
  
  --&gt; pdf attachment stripped &lt;--
  
  
  --2c88ff549e67c83e7a6e3df0bffe9dc9--)
  </code></pre>