0

このエラーをグーグルで検索すると、ほとんどすべての問題は、空のメールアドレスまたは補間されていない変数によって引き起こされます. この場合、報告された例外は、有効な住所と思われるものを引用しています。

さらに、問題のある唯一のアドレスです。スクリプトは問題なく他のすべてのユーザーにメールを送信します。

昨日エラーが発生したとき、mySQL のフィールドを手動でクリアし、Outlook から見えない文字が貼り付けられたのではないかと心配して再入力しましたが、今日エラーが再発しました。

これは、ユーザーの電子メールが置き換えられたエラーです。彼のメールアドレスは firstNameLastName@yahoo.com です。珍しいことは何もありません。

PHP Fatal error:  Uncaught exception 'Swift_RfcComplianceException' with message 'Address in mailbox given [Xxx Yyy <xxxyyy@yahoo.com>] does not comply with RFC 2822, 3.6.2.' in /home/foo/foo.org/classDBI/Swift-4.1.5/lib/classes/Swift/Mime/Headers/MailboxHeader.php:308
Stack trace:
#0 /home/foo/foo.org/classDBI/Swift-4.1.5/lib/classes/Swift/Mime/Headers/MailboxHeader.php(238): Swift_Mime_Headers_MailboxHeader->_assertValidAddress('Xxx Yyy <xx...')
#1 /home/foo/foo.org/classDBI/Swift-4.1.5/lib/classes/Swift/Mime/Headers/MailboxHeader.php(96): Swift_Mime_Headers_MailboxHeader->normalizeMailboxes(Array)
#2 /home/foo/foo.org/classDBI/Swift-4.1.5/lib/classes/Swift/Mime/Headers/MailboxHeader.php(60): Swift_Mime_Headers_MailboxHeader->setNameAddresses(Array)
#3 /home/foo/foo.org/classDBI/Swift-4.1.5/lib/classes/Swift/Mime/SimpleHeaderFactory.php(60): Swift_Mime_Headers_MailboxHeader->setFieldBodyModel(Array)
#4 /home/foo/tax in /home/foo/foo.org/classDBI/Swift-4.1.5/lib/classes/Swift/Mime/Headers/MailboxHeader.php on line 308

この 1 つのレコードを除いて成功するエラーを生成するコードは次のとおりです。

$message = Swift_Message::newInstance()
  ->setSubject("Ticket Report for " . date("n/j/Y"))
  // email => name
  ->setFrom(array('postmaster@' . SITEDOMAIN => ORGNAME . ' Admin'))
  // email => name
  ->setTo(array($u->email => $u->first_name . ' ' . $u->last_name))
  //Give it a body
  ->setBody(strip_tags($email_body))
  //And optionally an alternative body
  ->addPart(nl2br($email_body), 'text/html')
  ;

$transport = new Swift_SmtpTransport(); 
$mailer = Swift_Mailer::newInstance($transport);
$result = $mailer->send($message);

では、これをデバッグするための次のステップは何ですか?

4

1 に答える 1