Как я могу записать неудачные письма в базу данных, используя swiftmailer - PullRequest
0 голосов
/ 12 июня 2019

Как я могу проверить ошибочные письма. 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 ($ посыла); умереть (); // всегда возвращает true

Я бы ожидал, правда или ложь

1 Ответ

0 голосов
/ 13 июня 2019

Вы должны проверить с помощью SMTP.

Это означает, что вы должны подключиться к SMTP-серверу этой электронной почты.

После подключения к SMTP-серверу вы должны отправить следующие команды:

HELO somehostname.com
MAIL FROM: <no-reply@gmail.com>
RCPT TO: <emailtovalidate@domain.com>

Если вы получаете «Relay access denied», это означает, что это письмо недействительно.

Существует простой класс PHP.Вы можете использовать его:

http://www.phpclasses.org/package/6650-PHP-Check-if-an-e-mail-is-valid-using-SMTP.html

...