最近laravel5.6でWEBサービスを作っておりますが、laravelで会員の新規登録を行った際に、そのメールアドレスが存在するかを確認する仕様があったので、以下のサイトを参考にしながら、メール確認機能を作成しました。
Email verification in a Laravel 5 app
その時にハマってしまったのが、送ったメールが何故か改行が入っていない問題。
メールの送信については、他の機能で利用していて、問題なくbladeに書いたとおりのメールが届いているのですが、この確認メールに関しては何故か改行が入らない!
で、結局は何が原因だったかというと、参考サイトで言うところの
EmailVerification.phpの
public function build() { return $this->view('email.verify_account')->with([ 'email_token' => $this->user->email_token ]); }
EmailVerification.phpの
public function build() { return $this->view('email.verify_account')->with([ 'email_token' => $this->user->email_token ]); }
return $this->viewのところをtextにすると、改行が入ります。
public function build() { return $this->text('email.verify_account')->with([ 'email_token' => $this->user->email_token ]); }
いつもcontrollerでメールを送信する処理を書くときは
public function build() { Mail::send(['text' => 'mail.emailconfirm'], $data, function($message) use($data) { $message->from('noreply@test.co.jp', 'テストサイト'); $message->to($data["mail"])->subject($data["title"]); });
というようにtext指定をしているんですね。
もしlaravelのメールの改行ではまっている人がいたら参考になればと思います。
WordPressやWEB技術、集客、ChatGPTなど最新技術に関する情報を毎週お届けする
メールマガジンを発行しています。
不定期でWordPressの脆弱性情報も配信していますので、
WEB担当者やWEBを学んでいる方などにオススメの無料メールマガジンです!
こちらの記事もおすすめです☆
コメント