ハマログ

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

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   2017年2月20日


関連記事

Laravel開発でREPLを使う

久しぶりにLaravelでのそれなりの規模の開発に携わることになりました。 以前…

赤ちゃん泣きやみ動画試してみました。

こんにちわ!   話題を呼んでいる赤ちゃん泣きやみ動画を実際に試してみ…

PHPのPSRについて

こんにちは、かねこです。 プログラムの話を書きます。 PHPのコーディング規約に…


← 前の投稿

次の投稿 →