Как отправить тестовое письмо из Laravel: пошаговое руководство с примерами кода

Чтобы отправить тестовое письмо из Laravel, вы можете использовать встроенный фасад Mail Laravel. Вот пример того, как это можно сделать:

  1. Настройте параметры электронной почты.
    Убедитесь, что вы правильно настроили настройки электронной почты в файле .envвашего проекта Laravel. Установите для MAIL_MAILERнужный почтовый драйвер, например smtp, и укажите соответствующие параметры конфигурации для выбранного драйвера.

  2. Создайте почтовый класс:
    Далее создайте почтовый класс, который представляет электронное письмо, которое вы хотите отправить. Вы можете создать почтовый класс с помощью команды Artisan make:mail. Например, чтобы создать класс TestMail, выполните следующую команду:

    php artisan make:mail TestMail

    Это создаст класс TestMailвнутри каталога app/Mail.

  3. Создайте электронную почту.
    Откройте сгенерированный класс TestMailи настройте его в соответствии со своими потребностями. Вы можете указать тему электронного письма, получателя и любые необходимые данные. Вот пример метода buildв классе TestMail:

    use Illuminate\Bus\Queueable;
    use Illuminate\Contracts\Queue\ShouldQueue;
    use Illuminate\Mail\Mailable;
    use Illuminate\Queue\SerializesModels;
    class TestMail extends Mailable
    {
    use Queueable, SerializesModels;
    /
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->subject('Test Email')
                    ->view('emails.test');
    }
    }
  4. Создайте представление Blade:
    Создайте файл представления Blade, который будет использоваться в качестве содержимого электронного письма. В этом примере файл представления называется test.blade.phpи может храниться в каталоге resources/views/emails. Настройте вид в соответствии с содержимым вашего электронного письма.

  5. Отправить электронное письмо.
    Чтобы отправить электронное письмо, вы можете использовать фасад Mailв контроллере Laravel или где-либо еще в вашем приложении. Вот пример отправки TestMail:

    use App\Mail\TestMail;
    use Illuminate\Support\Facades\Mail;
    public function sendTestEmail()
    {
    $email = new TestMail();
    Mail::to('recipient@example.com')->send($email);
    }

Вот и все! Когда вы вызываете метод sendTestEmail, Laravel отправит электронное письмо, используя настроенный почтовый драйвер.