ハマログ

株式会社イーツー・インフォの社員ブログ

Laravel5.4(5.3?)のメール送信

Laravel5.0とか5.1とかあたりでは、クロージャを利用してメール送信のプログラムを書いていました

こんな感じです。

Mail::send('emails.welcome', $data, function($message)
{
    $message->from('us@example.com', 'Laravel');
    $message->to('foo@example.com')->cc('bar@example.com');
    $message->attach($pathToFile);
});

変数をクロージャのパラメータ渡ししないといけないので、少しめんどくさかったです。

Laravel5.4では、新しいMailableインタフェースを利用したメール送信ができるようになりました。
(Laravel5.3~かもしれない。)

artisanでクラスを作成します。

> php artisan make:mail ContactMail
Mail created successfully.

App\Mail\ContactMail.phpクラスが作成されました。

利用するviewを指定します。ついでにSubjectを指定してみました

    public function build()
    {
        return $this->subject('お問い合わせ確認メール')
                        ->view('email.contact');
    }

あとは、呼び出すだけです。

Mail::to('example@e2info.com')
->queue(new ContactMail());

無事に送信できました。

おしまい

LaravelMailMailablePHPメール

kaneko tomo   kaneko tomo   2017年2月20日


関連記事

Laravel出力ログファイルの切り替え(またはローテーション)

Laravelの標準ログ(storage/logs/laravel.log)は単…

APC導入でPHPのパフォーマンスアップ

こんにちは池島です。PHPにAPCを導入したのでその時の記録を書きます。 導入し…

CircleCI2.0でER図を出力

はじめに CIでER図の自動出力を考えていたところ、CircleCI x Sch…


← 前の投稿

次の投稿 →