Сбой PHPMailer при попытке отправить два электронных письма в одном скрипте

#php #email #phpmailer

#php #Адрес электронной почты #phpmailer

Вопрос:

Я использую PHPMailer для отправки электронных писем, и я создал функцию, которая подготавливает электронное письмо и отправляет его. Если я попытаюсь использовать эту функцию более одного раза в скрипте, это остановит выполнение скрипта, когда он попытается отправить второе электронное письмо с использованием той же функции.

моя функция:

 public static function sendEmail($from, $fromName, $to, $subject, $body){
    require("includes/class.phpmailer.php");

    $mailer = new PHPMailer();
    $mailer->IsSMTP(true);
    $mailer->Host = 'ssl://smtp.gmail.com:465';
    $mailer->SMTPAuth = true;
    $mailer->Username = 'removed';
    $mailer->Password = 'removed';

    $mailer->From     = $from;
    $mailer->FromName = $fromName;
    $mailer->AddAddress($to);
    $mailer->Subject  = $subject;
    $mailer->Body     = $body;
    $mailer->WordWrap = 100;
    if ($mailer->Send()) {
        return true;
    } else {
        return false;
    }
}
  

Почему это происходит? Это как-то связано с созданием нового объекта phpmailer каждый раз?

Комментарии:

1. Прежде всего, я бы предложил использовать require_once, если не требуется

2. И активируйте отчет об ошибках. Должно появиться сообщение об ошибке

Ответ №1:

Я думаю, вам следует использовать require_once() вместо require