env — 環境変数を表示するコマンド

artisan

env

php artisan envはLaravelアプリケーションが現在動作している環境(local, production, staging など)を表示します。

  • カテゴリ: artisan
  • 掲載バージョン: Laravel 12・PHP 8.4
  • 名前空間 / FQCN / コマンド: php artisan env
  • 関連: config:list, config:cache, config:clear, tinker
  • 変更履歴: 追加: Laravel 4.0 (永続的), 非推奨: なし

要点(TL;DR)

  • 何に使うか:現在のアプリケーション環境を確認する
  • 最低限の使い方:php artisan env
  • よくある罠
  • .envが読み込まれていないと誤った環境を表示
  • 本番環境で実行するとproductionと出力され、開発者が混乱
  • デバッグ時に環境が意図せず切り替わることがある

概要

php artisan envはアプリケーションの環境を即座に把握できる便利なコマンドです。デプロイ前に設定が正しいか確認したり、本番で不具合が発生した際に環境情報を手軽に取得できます。

構文 / シグネチャ

php artisan env
引数 必須 既定値 説明

戻り値string
表示された環境名(例: local, production)。標準出力に書き込まれ、プロセスは終了コード 0 で終了。

例外/副作用

  • 例外は投げられない
  • ファイルやキャッシュの変更は行わない

使用例

最小例

php artisan env

実務例

# 本番環境で実行
$ php artisan env
production

# CI/CDパイプラインで確認
$ php artisan env > env.txt

よくある落とし穴・注意

  • .env未設定
  • 開発環境で.envファイルがない場合、デフォルトでproductionが表示される。
  • キャッシュされた設定
  • config:cacheで設定をキャッシュしていると、APP_ENV がキャッシュに残っている場合がある。
  • 複数環境
  • Dockerや複数のホストで同じアプリを走らせる場合、コンテナ内でenvコマンドを実行すると想定外の環境が表示されることがある。

代替・関連APIとの比較

API 用途 選定基準
config('app.env') PHP内で環境を取得 コード内で確認したいとき
php artisan tinker インタラクティブで確認 デバッグや一時的確認
php artisan config:list 設定全体を確認 設定項目を把握したいとき

envはシンプルに環境名だけが必要なときに最適。設定全体を確認したい場合は config:list を併用すると便利です。

テスト例(Pest)

it('shows the current environment', function () {
    $output = shell_exec('php artisan env');
    expect(trim($output))->toBe(env('APP_ENV', 'production'));
});

トラブルシュート(エラー別)

症状/エラー 原因 対処
出力が空 Laravel が正しく起動していない php artisan を実行して確認
production と表示される APP_ENV が設定されている .env または環境変数を確認
APP_ENVlocal だが production と表示 キャッシュが残っている php artisan config:clear を実行

参考リンク

レン (Wren)

こんにちは。レンです。

Laravelのコードの森に住んでいる、小さな案内役です。
ルーティングの枝やクラスの影を歩きながら、コードの流れや仕組みを眺めています。

このサイトでは、Laravelの基本から実装のコツまで、開発で役立つポイントを静かに整理しています。
難しいことを増やすのではなく、コードの見通しが少し良くなるヒントを届けるのが役目です。

「この処理はどこに書くのがいいのか」
「Laravelではどう考えると整理できるのか」

そんな疑問に、小さなメモを残すような気持ちで記事を書いています。

コードを書いている途中で迷ったとき、
このサイトが少し立ち止まって整理できる場所になればうれしいです。

レン (Wren)をフォローする