LaravelのMAIL_ADMINなどenv設定が反映されない: no valid recipients, email of non-object

Laravel・PHP豆知識・トラブル対策

Laravelで、.envファイルの情報を変更を設定した後、なぜか設定が反映されないことがありました。

私はMAIL_ADMINの項目を.envファイルに追加したものの、なぜか反映されず。

Trying to get property ‘email’ of non-object

no valid recipients

などのエラーに見舞われました。

試行錯誤の後、どうやら .envファイルへの変更内容が反映されていないことに気づいたのです。

LaravelのMAIL_ADMINなどenv設定が反映されない時の対策

Laravelのサーバーを立ち上げているときは、まずはサーバーを立ち上げなおしましょう。

それでもだめなら、下記のコマンドを入力してください。

これは、キャッシュをクリアしてくれるコマンドです。

この後に再度、実行してみてください。

LaravelのMAIL_ADMINなどenv設定が反映されないエラーの原因

私はこの config:clear コマンドを、GitHubのツールをインストールするために使いました。

そもそもキャッシュをクリアして、新たな設定内容を反映してくれるためのコマンドです。

この時は良かったものの、どうやらその後、env設定内容を更新したときに反映されないエラーが起こったのです。

推測ながら、どうも、このコマンドが原因な気が…

一度実施してしまうと、再度キャッシュをクリアしなければ、.envの設定変更が反映されなくなってしまうような気がしています。

断定はできないので、また何かあれば記事に追加しておきますね。

Laravel8では同じことは起こらない! かも

Laravel7では、envファイルの内容を変更した後、サーバーを立ち上げなおさなければ変更は反映されません。

このような仕様が、このエラーを引き起こしているとも言えますよね。

Laravel8では、うれしいことにこの部分が改善されている模様。

Laravel8の公式のリリースノートでは、次のように書かれています。

The Artisan serve command has been improved with automatic reloading when environment variable changes are detected within your local .env file. Previously, the command had to be manually stopped and restarted.

*Laravel8リリースノート

翻訳ローカル環境で環境変数の変更が検出された場合、Artisan Serve Command は、自動で再読み込みしてくれるようになった。

以前は手動でコマンドをとめて、再度実行する必要があった。

今後はこのエラーがないことを祈りましょう。

Laravel8の14個の更新内容は下記の記事にまとめているので、他の変更内容にも興味があれば、目を通してみてくださいね。

 

Laravel・PHP豆知識・トラブル対策

【Laravelの教科書・プレゼント】

Junko
Laravelの使い方を覚えたい!と思ったら、ぜひ、役立ててほしいです。 基礎編は無料でプレゼント中です♪
ひつじプログラマ
会員制サイトをいちから作っていくよ。ボタンをクリックして詳細を見てね。
Laravelの教科書の詳細を見る

Laravel8版と、最新のLaravel9版、ふたつのテキストご用意してます♪

【無料プレゼント】

「LaravelでWebアプリをいちから作れるようになりたい!」

そんなLaravel初心者のあなたへ【Laravelの教科書】基礎編プレゼント中! 会員制フォーラムサイトを学習しながら作れます。

詳細はこちらをクリック

Laravel8版と、最新のLaravel9版、ふたつのテキストご用意してます♪

社内にWebアプリ開発経験がなくて、困ってませんか?

「自社でWebアプリ開発を始めていきたい」
という企業様のために、Laravelセミナー・プログラミング教育を実施しています。

【セミナー使用スライド】

詳細はこちらご覧ください

Twitter始めました。
40代からプログラミング!

コメント

タイトルとURLをコピーしました