Отправлять почту, только если fsockopen подключен к SMTP-серверу

Пытаюсь быть немного оборонительным в кодировании, и я пытаюсь отправлять почту, только если соединение успешно с SMTP-сервером. В настоящее время я получаю warning если соединение не удалось

Я все еще могу поймать, если отправленная почта true или же false но я хотел бы знать, как правильно это сделать, чтобы не выдвигать предупреждение.

Текущий код:

    $this->email->message($content);
if ($this->email->send()) {
return true; }
else{
return false;
}

Чего я пытаюсь добиться, чтобы не выдвигать предупреждение.

if fsockopen connection successful {
if ($this->email->send()) {
return true; }
else{
return false;
}
}

Предупреждение я получаю сейчас, когда fsockopen не может подключиться

Message: fsockopen(): unable to connect to ssl://smtp.googlemail.com:465 (php_network_getaddresses: getaddrinfo failed: No such host is known. )

Хотя это работает, и я могу скрыть все ошибки / предупреждения, я хотел бы правильный способ сделать это 🙂

0

Решение

В последних версиях PHPMailer не использует fsockopen (оно использует stream_socket_client), и он ловит и сообщает об ошибках подключения. Я подозреваю, что вы используете старую версию, поэтому получить последнюю, и основывайте свой код на примерах, прилагаемых к нему.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]