

Laravel9 で local時のみ実行する判断用に config('app.env') を使おうとしています。  
しかしながら、上手くいきません。  
**.env をどのように設定しても、常に local を返してきます。**

.env APP_ENV= | dd(config('app.env'))  
---|---  
local | local  
test | local  
production | local  
  
`.env.test` などの他のファイルは存在していません  
`.env.example` は `APP_ENV=local_example` にしてあります

### 試したこと

  * キャッシュのクリア `sail artisan config:clear`  
キャッシュファイルが存在しないことを確認 `bootstrap/cache/config.php`

  * `config/app.php` のAPP_ENV をAPP_NAMEに変更してテスト  
`'env' => env('APP_ENV', 'production'),`  
`'env' => env('APP_NAME', 'production'),` 結果 `laravel9local` と .env の内容表示

  * `sail artisan env` で `.env APP_ENV` に設定した `test` になることを確認

  * .env の中に `APP_ENV` の指定はひとつだけ

  * .env から `APP_ENV` を削除しました。結果 `local` を出力

  * sail の停止と開始をすると「開始」したときの APP_ENV を保持している。APP_NAME などは保持せず変更した直後に値が変わる

### 疑問点

なぜ、他の .env の値は正常に取り出すことができるのに  
APP_ENV だけが常に local を返してくるのかがわかりません

原因、解決方法、問題の可能性について教えていただけると助かります。  
よろしくお願いします。


CC BY-SA 4.0
2022-12-08T16:15:39.730
92648
2022-12-09T03:54:34.033
2022-12-09T03:32:06.917
7980
7980
question
laravel
Laravel9 で config('app.env') が常に local を返してくる

[code]

    App::environment()
    
[/code]

で環境名を得られないでしょうか


CC BY-SA 4.0
2022-12-09T03:54:34.033
92657
2022-12-09T03:54:34.033
15380
92648
answer