Laravelのバージョンをすぐに確認する定番コマンド「php artisan –version」
Laravelのバージョンを最速で知りたいなら、プロジェクトのルートディレクトリで次のコマンドを実行します。
php artisan --version
# Laravel Framework 10.48.4
インストール済みのフレームワーク本体のバージョンが1行で返り、短縮形の`-V`でも結果は同じです。バージョンアップ前後の状態確認や、複数プロジェクトを行き来していて今どの世代を触っているか把握したいとき、まず打つべき基本コマンドといえます。
artisanコマンドが使えない環境での対処法
artisanが動かないケースは意外と多く、原因の切り分けが重要です。プロジェクトのルート以外で実行している、`composer install`が未実施で`vendor`ディレクトリが無い、PHPのパスが通っていない、といった状況がよくあります。
まず`ls artisan`でファイルの存在を確認しましょう。無ければディレクトリを間違えています。`vendor`が無ければ依存関係が未解決なので、次に紹介するcomposerベースの確認へ切り替えると糸口がつかめます。
composer show laravel/frameworkで依存パッケージのバージョンを正確に把握する
artisanが使えない、あるいはインストール前にバージョンを確認したい場合は、Composer側から調べます。
composer show laravel/framework
このコマンドは実際にインストールされているパッケージのメタ情報を表示し、`versions : * 10.48.4`のように厳密なバージョンがわかります。引数なしの`composer show`なら依存パッケージ全体が一覧されるので、関連ライブラリの構成もまとめて確認できます。
composer.jsonとcomposer.lockで見えるバージョンの違い
混同しやすいのが、`composer.json`と`composer.lock`の意味の違いです。`composer.json`の`”laravel/framework”: “^10.0″`は「許容する範囲」であって、実際にインストールされたバージョンではありません。
一方の`composer.lock`には`10.48.4`のように確定した実バージョンが記録されます。チーム間で環境を揃えたいときは、必ずlockファイルを信頼してください。json側の表記だけで判断すると、実環境とのズレを見落とします。
Applicationクラスのapp()->version()でプログラム内からバージョンを取得する
コマンドラインではなくアプリのコード内でバージョンを取得したい場面では、Applicationインスタンスの`version()`メソッドを使います。
app()->version(); // "10.48.4"
この方法が生きるのは、動作中のアプリが実際に読み込んでいるバージョンを知りたいときです。デバッグ用のシステム情報画面に表示する、特定バージョン以上でのみ有効な処理を分岐させるなど、実行時の判定に組み込める点がコマンドとの決定的な違いです。
ルートやコントローラーでの動作確認例
手軽に試すなら、`routes/web.php`にクロージャを1本追加するのが早いです。
Route::get('/version', function () {
return app()->version();
});
ブラウザで`/version`にアクセスすればバージョン文字列が返ります。コントローラー内や`App::version()`ファサード経由でも結果は同じです。ただし確認用ルートを本番に残すと情報漏洩につながるため、検証後は必ず削除してください。
4つの確認方法の使い分けと本番・開発環境での注意点
4つの手段は目的で選べば迷いません。手早く知りたいなら`php artisan –version`、厳密な依存構成なら`composer show`とlockファイル、コード内で判定したいなら`app()->version()`です。本番環境ではSSHで`artisan`か`composer`を使うのが安全で、確認用ルートの設置は避けましょう。
PHPバージョンとの対応関係も合わせて確認する
Laravelのバージョンだけでは不十分で、動作要件となるPHPバージョンとの対応も必ずセットで確認します。Laravel 10はPHP 8.1以上、Laravel 11はPHP 8.2以上が必須です。`php -v`で現在のPHPバージョンを調べ、アップグレード前に要件を満たしているか照合しておけば、想定外のエラーを防げます。
確認したバージョンからサポート期限を調べる方法
把握したバージョンがまだセキュリティ修正を受けられるかどうかも、重要な判断材料です。Laravelは公式サイトのSupport Policyページで、バージョンごとのバグ修正期限とセキュリティ修正期限を公開しています。EC構築のように長期運用が前提のプロジェクトでは、確認したバージョンの期限を調べ、期限切れが近ければ計画的なアップグレードを検討してください。