Отправка почты через SMTP с помощью PHPMailer

Задача:

Как отправить почту через протокол SMTP при помощи библиотеки PHPMailer на примере Яндекс.Почты


Решение:
  1. Скачать свежий архив библиотеки PHPMailer
  2. Распаковать архив и скопировать всё из \PHPMailer-master\src\ в /PHPMailer
  3. Вставить код:
    // Подключаем библиотеку PHPMailer
    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\Exception;
    require $_SERVER["DOCUMENT_ROOT"].'/PHPMailer/Exception.php';
    require $_SERVER["DOCUMENT_ROOT"].'/PHPMailer/PHPMailer.php';
    require $_SERVER["DOCUMENT_ROOT"].'/PHPMailer/SMTP.php';
    
    // Настройки сервера на примере Яндекс почты
    $mail = new PHPMailer;
    $mail->isSMTP();                                     
    $mail->Host         = 'smtp.yandex.ru';
    $mail->SMTPAuth     = true;
    $mail->Username     = 'mylogin'; // Если почта для домена, то логин это полный адрес почты
    $mail->Password     = 'mypassword';
    $mail->SMTPSecure   = 'SSL';
    //$mail->Port         = 465;
    
    // Авторизация
    $mail->CharSet = 'UTF-8';
    $mail->From = 'mylogin@yandex.ru';
    $mail->FromName = 'mylogin@yandex.ru';
    $mail->addAddress('mylogin@yandex.ru');
    
    // Контент                   
    $mail->isHTML(true);                    
    $mail->Subject = 'Тест отправки через SMTP';
    $mail->Body    = 'Тело сообщения';
    
    // Отправка
    if(!$mail->send()) {
        echo 'Сообщение не может быть отправлено.';
        echo 'Ошибка: ' . $mail->ErrorInfo;
        exit;
    }
    else{
        echo 'Сообщение отправлено.';
    }
Похожие решения:
Изменено: 07 08 2019
Просмотров: 21

Комментарии

Написать