env('APP_ENV')
useとapp 環境の取得の違いは何config('app.env')
ですか?App::environment()
私は、へのenv('APP_ENV')
意志が構成$_ENV
をconfig('app.env')
読み取り、App::environment()
すべての抽象化であることを知っています。そして、私の意見では、利点はこれでもあります。抽象化。
パフォーマンスやセキュリティのレベルなど、他の違いがあるかどうかはわかりません
env('APP_ENV')
useとapp 環境の取得の違いは何config('app.env')
ですか?App::environment()
私は、へのenv('APP_ENV')
意志が構成$_ENV
をconfig('app.env')
読み取り、App::environment()
すべての抽象化であることを知っています。そして、私の意見では、利点はこれでもあります。抽象化。
パフォーマンスやセキュリティのレベルなど、他の違いがあるかどうかはわかりません
同等に優れたオプションが 2 つあります
if (\App::environment('production')) {...}
また
if (app()->environment('production')) {...}
app()->environment() は実際にはBugsnagで使用されています。こちらのドキュメントを参照してください。
デフォルトでは、Laravel のアプリケーション インスタンスで environment() 関数を呼び出すことで、アプリの環境を自動的に検出します。
さて、違い:
1)env(...)
設定をキャッシュした後、関数は null を返します。本番環境でよく発生します。
config
2)単体テスト内でパラメーターを変更できるため、テスト中に柔軟性が得られます。