如何检查失败的邮件。即使我提供了无效的电子邮件地址,Swiftmailer也会返回true。我需要将发送失败的邮件记录到数据库中
$message = Yii::$app->mailer->compose();
$message->attach($protocal.$_SERVER['SERVER_NAME'].$payslip);
$message->setTo("tft@sjkdsjk.dfdh");
$message->setFrom("hr@gmail.com");
$message->setSubject($vStaffName." ".$vPeriodName. " Payslip");
$message->setTextBody("Find attached copy of your payslip. To open this document use your ID number as password");
$send = $message->send();
var_dump($ send); die(); //始终返回true
我希望是对还是错
答案 0 :(得分:0)
您应该使用SMTP进行检查。
这意味着您必须连接到该电子邮件的SMTP服务器。
连接到SMTP服务器后,您应该发送以下命令:
HELO somehostname.com
MAIL FROM: <no-reply@gmail.com>
RCPT TO: <emailtovalidate@domain.com>
如果收到“拒绝中继访问”,则表示该电子邮件无效。
有一个简单的PHP类。您可以使用它:
http://www.phpclasses.org/package/6650-PHP-Check-if-an-e-mail-is-valid-using-SMTP.html