ホームページ  >  記事  >  PHPフレームワーク  >  laravelフレームワークの.envファイルとconfigディレクトリの設定ファイルの関係

laravelフレームワークの.envファイルとconfigディレクトリの設定ファイルの関係

齐天大圣
齐天大圣オリジナル
2020-12-11 21:50:161837ブラウズ

おそらく多くの子供たちは、私と同じように、ドキュメントを読んでいるときに .env ファイルと config ディレクトリ内の設定ファイルに混乱したでしょう。それらの間にはどのような関係があるのでしょうか。今日は、彼らの以前の関係を見てみましょう。

.env ファイルと config ディレクトリ設定ファイルの関係

まず、ドキュメントには次のように書かれています。laravelすべての設定ファイルは config ディレクトリのファイルに保存されます。ディレクトリ。では、ルート ディレクトリにある .env ファイルは正確に何に使用されるのでしょうか? .env ファイルと config/app.php を開いてみましょう。

# .env文件
APP_NAME=Laravel
……    
# app.php文件
'name' => env('APP_NAME', 'Larave'),

これを見ると、基本的に一般的な意味が推測できます: config ディレクトリ内の設定ファイルの設定項目が env 関数を使用している場合、このオプションが .env ファイルで設定されている場合は、.env ファイル内の値が使用され、それ以外の場合は、設定ファイルに設定されているデフォルト値が使用されます。まずテスト コードを作成します:

return config('app.name');

次に、.env ファイルの APP_NAME をboy に変更し、app.php ファイルのデフォルト値を girl に変更します

APP_NAME=boy
……
'name' => env('APP_NAME', 'girl'),

興味深い問題が見つかりました、テスト コードによって返される結果は依然として Laravel です。次に、PHP 職人サーブを再起動し、再度更新したところ、結果は男の子でした​​。これにより、私の推測が正しかったことが確認されましたが、別の憶測が生まれました:

使用される構成値が .env ファイル内にある場合、.env ファイル内の値を変更してもすぐには有効にならないため、再起動する必要があります。

私の別の推測を検証するために、.env 内の APP_NAME 行を削除して再起動しました。帰ってきたテストの結果は女の子。次に、girl を girl1 に変更してブラウザを更新すると、戻り値は girl1 になりました。したがって、私の結論が正しいことが証明されました。

ここで要約すると:

config ディレクトリ内の構成ファイルの構成項目で env 関数が使用されている場合、このオプションが .env ファイルで構成されている場合は、次を使用します。 .env ファイル、それ以外の場合は、構成ファイルに設定されたデフォルト値が使用されます。
  • 使用される構成値が .env ファイルにある場合、.env ファイル内の値を変更すると、すぐには有効になりません。有効にするには、php 職人サーブを再起動する必要があります。

以上がlaravelフレームワークの.envファイルとconfigディレクトリの設定ファイルの関係の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。