кодесурса
«Laravel

Laravel (5.7) Почта

script1adsense2code
script1adsense3code

Шаг 1: Установите Laravel

composer create-project laravel/laravel emailsend --prefer-dist

После этого нам нужно определить конфигурацию Email внутри файла .env .

Шаг 2: Конфигурация электронной почты

Для этого примера я использую mailtrap. Это своего рода приложение, которое вы можете использовать для проверки вашей электронной почты. После того, как вы зарегистрируетесь, вы увидите, что он предоставляет нам следующие подробности.

Host:	smtp.mailtrap.io
Port:	25 or 465 or 2525
Username:	// some username
Password:	// some password
Auth:	PLAIN, LOGIN and CRAM-MD5
TLS:	Optional

Мы должны использовать эти детали в файле .env .

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME= // some username
MAIL_PASSWORD= // some password
MAIL_ENCRYPTION=null

Если вы используете Gmail или адрес электронной почты вашей компании, пожалуйста, замените свои уважаемые учетные данные здесь.

Шаг 3: Создайте класс Mailable

Перейдите в терминал и введите следующую команду.

php artisan make:mail SendMailable

Таким образом, он создаст этот файл внутри AppMailSendMailable.php. Теперь этот класс содержит одно свойство, и это имя, которое нам нужно передать при создании экземпляра этого класса.

<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;
class SendMailable extends Mailable
{
    use Queueable, SerializesModels;
    public $name;
    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct($name)
    {
        $this->name = $name;
    }
    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->view('emails.name');
    }
}

Здесь, в этом классе, я использовал параметризованный конструктор. Итак, у нас есть свойство $ name в нашем классе. Теперь нам нужно создать blade-файл внутри папки views . Мы можем использовать это свойство $ name в качестве данных файла view name.blade.php . Теперь сначала сформируйте эту точку зрения.

Шаг 4: Создайте файл представления.

Внутри папки views лучше создать новую папку с именем email и в этой папке создать один файл с именем name.blade.php.

<div>
    Hi, This is : {{ $name }}
</div>

Шаг 5: Определите маршрут для отправки электронного письма

Внутри маршрутов >> файла web.php нам нужно определить маршрут для отправки электронного письма.

Route::get('/send/email', '[email protected]');

Теперь нам нужно написать код внутри функции mail, чтобы отправить электронное письмо.

// HomeController.php
use Illuminate\Support\Facades\Mail;
use App\Mail\SendMailable;
public function mail()
{
   $name ='Krunal';
   Mail::to('[email protected]')->send(new SendMailable($name));
   
   return 'Email was sent';
}

Мы включили Mailable класс и Почтовый фасад. Для этого примера у нас есть жесткий код значения имени, но в примере в реальном времени у нас есть динамические данные для генерации электронной почты .

Шаг 6: Запустите сервер.

Подойдите к своему терминалу и нажмите следующую команду.

php artisan serve

Перейдите по этому адресу: http: // localhost: 8000 / send / email

Предыдущая: Laravel (5.7) Файловое хранилище
Далее: Laravel (5.7) Уведомления

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code