PHPを用いた開発やサーバーの運用管理において、現在動作しているPHPのバージョンを正しく把握することは非常に重要です。
互換性の確認、新しい構文の利用可否、セキュリティパッチの適用状況など、あらゆる場面でバージョン情報は判断の基準となります。
本記事では、CLI(コマンドラインインターフェース)を利用した基本的な確認方法から、OS別の実行手順、さらにはWebブラウザ経由での確認方法まで、実務で役立つ知識を網羅して解説します。
PHPのバージョン確認が必要な理由
PHPは進化の速いプログラミング言語であり、メジャーアップデートごとに新しい機能が追加され、古い機能が非推奨(Deprecated)や削除となることがあります。
例えば、PHP 7からPHP 8への移行では、JITコンパイラの導入や型システムの強化など、パフォーマンスと安全性が大きく向上しました。
2026年現在の開発環境においては、利用しているライブラリやフレームワークが現在のPHPバージョンに対応しているかを確認することが、バグの未然防止に直結します。
また、サーバーの保守運用では、サポート期限が切れたバージョンを使い続けることが重大なセキュリティリスクとなるため、定期的なバージョンチェックが欠かせません。
最も基本的なコマンド:php -v
ターミナルやコマンドプロンプトからPHPのバージョンを確認する際、最も汎用的なのが php -v コマンドです。
このコマンドは、インストールされているPHPの実行ファイル(バイナリ)に対してバージョン情報の出力を要求するものです。
実行方法と出力結果の読み方
コマンドラインで以下の通り入力し、エンターキーを押します。
# PHPのバージョンを表示する
php -v
実行すると、以下のような形式で情報が表示されます(出力例は環境により異なります)。
PHP 8.4.5 (cli) (built: Feb 12 2026 10:00:00) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.4.5, Copyright (c) Zend Technologies
with Zend OPcache v8.4.5, Copyright (c), by Zend Technologies
この出力結果からは、以下の情報を読み取ることができます。
| 項目 | 内容 |
|---|---|
| PHP 8.4.5 | メジャーバージョン.マイナーバージョン.リリース番号 |
| (cli) | コマンドライン用のインターフェースであることを示す |
| NTS / TS | Non-Thread Safe または Thread Safe の区別 |
| Zend Engine | PHPのコアエンジンであるZend Engineのバージョン |
開発環境で特定の関数が動作しない場合などは、まずこのコマンドを叩き、想定通りのバージョンが動作しているかを確認しましょう。
OS別のバージョン確認手順
PHPがインストールされているOS(オペレーティングシステム)によって、コマンドを実行するための環境準備や注意点が異なります。
主要なOSごとの手順を確認していきましょう。
Windows環境での確認
Windowsでは「コマンドプロンプト」または「PowerShell」を使用します。
Windows環境において注意すべき点は、環境変数(PATH)の設定です。
Win + Rキーを押し、cmdと入力してコマンドプロンプトを起動します。php -vを実行します。
もし、「’php’ は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません」というエラーが表示された場合は、PHPのインストールディレクトリがシステムの環境変数 Path に登録されていません。
その場合は、PHPがインストールされているフルパス(例:C:\php\php.exe -v)を指定して実行する必要があります。
Linux(Ubuntu/CentOSなど)での確認
Linuxサーバー環境では、標準的なパッケージ管理システム(aptやdnf)を用いてPHPがインストールされていることが一般的です。
# Ubuntu/Debian系の場合
php -v
# インストールされているパッケージ全体から確認する場合
dpkg -l | grep php
Linux環境では、複数のバージョンのPHPが共存しているケースが多くあります。
その場合、/usr/bin/php がどのバージョンにシンボリックリンクされているかによって、デフォルトで起動するコマンドが変わります。
特定のバージョンを指定して確認したい場合は、php8.3 -v のようにバージョンを明示したコマンドを使用します。
macOSでの確認
macOSでは「ターミナル.app」を使用します。
以前はOSにPHPが標準搭載されていましたが、現在は開発者が Homebrew などのパッケージマネージャーを使用して個別にインストールするのが主流です。
# インストール経路を確認しつつバージョンを表示
which php
php -v
Homebrewを使用している場合、brew list --versions php コマンドを実行することで、Homebrew経由で管理されているPHPの詳細なバージョン情報を取得することも可能です。
Webサーバー上で動作するPHPバージョンの確認
CLIでの確認結果と、ApacheやNginxなどの Webサーバー上で動作しているPHPのバージョンが必ずしも一致しない という点には注意が必要です。
CLI用とWebサーバー用(PHP-FPMなど)で異なる設定ファイル(php.ini)が読み込まれていることが多いためです。
Webブラウザからアクセスしてバージョンを確認するには、PHPの組み込み関数である phpinfo() を使用します。
phpinfo() を利用した確認手順
以下のコードを記述したPHPファイルを作成し、サーバーにアップロードします。
<?php
// PHPの構成情報をすべて出力する
phpinfo();
?>
ファイル名を info.php とした場合、ブラウザから http://your-domain.com/info.php にアクセスします。
すると、PHPのバージョンだけでなく、読み込まれている拡張モジュール、メモリ制限、最大アップロードサイズなどの詳細な設定一覧が表示されます。
確認が終わったら、サーバーの情報を第三者に漏洩させないよう、必ずファイルを削除してください。
Docker環境でのバージョン確認
現代の開発現場ではDockerを利用したコンテナ環境が一般的です。
ホストマシンではなく、コンテナ内で動作しているPHPのバージョンを確認するには、docker exec コマンドを使用します。
コンテナ内でのコマンド実行
実行中のコンテナ名が php-container である場合、以下のコマンドでバージョンを確認できます。
# 実行中のコンテナに対してコマンドを送る
docker exec -it php-container php -v
また、Dockerfileを作成する過程でバージョンを固定している場合は、Dockerfile内の FROM php:8.4-fpm といった記述を確認することでも、ベースとなっているイメージのバージョンを知ることができます。
詳細情報を確認するための追加オプション
単にバージョン番号を知るだけでなく、特定の機能が有効になっているかを確認するためのオプションも活用しましょう。
拡張モジュールの確認(php -m)
特定のライブラリ(PDOやmbstringなど)がインストールされているかを確認するには、-m オプションを使用します。
# インストール済みのモジュールを一覧表示
php -m
出力結果を検索(grep)することで、特定のモジュールの有無を素早くチェックできます。
# curlモジュールが有効か確認
php -m | grep curl
設定内容の確認(php -i)
CLI環境での詳細な設定情報を確認するには、-i オプションを使用します。
これはCLI版の phpinfo() に相当します。
# すべての設定情報を表示(量が多いのでless等で閲覧推奨)
php -i | less
特定の項目だけを確認したい場合は、パイプラインを利用して絞り込みを行います。
# メモリ制限の設定を確認
php -i | grep memory_limit
バージョン確認時の注意点とトラブルシューティング
コマンドを実行しても期待通りの結果が得られない場合の対処法をまとめました。
コマンドが見つからない場合
「command not found: php」というエラーが出る場合、以下の原因が考えられます。
- PHPがそもそもインストールされていない。
- インストールされているが、パス(PATH)が通っていない。
- エイリアス設定の影響で別のコマンドとして認識されている。
まずは、which php(Linux/macOS)や where php(Windows)を実行して、実行ファイルの場所を特定できるか試みてください。
バージョンが古いまま更新されない場合
新しくPHPをインストールしたにもかかわらず、php -v の結果が変わらないことがあります。
これは、古いバージョンのPHPが優先的に読み込まれる設定になっているためです。
システム内の優先順位を変更するか、環境変数の順番を見直す必要があります。
Ubuntuなどの場合は update-alternatives コマンドを使用して、デフォルトのPHPバージョンを切り替える作業が必要です。
# PHPの優先順位を切り替える(Ubuntu等の場合)
sudo update-alternatives --config php
CLIとWebでバージョンが異なる
前述の通り、CLI版とWebサーバーモジュール版のPHPは別々に管理されていることが多いです。
「コマンドで確認したときは8.4だったのに、WordPressの管理画面では8.2と表示される」といった現象は、Webサーバー側が参照しているPHP実行パスが更新されていない ことが原因です。
Apacheの proxy\_fcgi 設定や、Nginxの fastcgi\_pass で指定しているソケット・ポートが正しいバージョンのPHP-FPMを指しているか確認してください。
まとめ
PHPのバージョン確認は、単に数字を見るだけの作業ではなく、開発環境の健全性を維持するための重要なステップです。
- 基本の
php -vで全体のバージョンを把握する。 - OSや環境(Dockerなど)に合わせて適切な実行方法を選択する。
- CLIとWebサーバー上のバージョンに差異がないか を常に意識する。
phpinfo()やphp -mを活用して詳細な設定まで確認する。
これらの手順を正しく理解し、実行できるようになることで、環境に起因するトラブルを最小限に抑え、スムーズな開発・運用を実現できます。
バージョン情報を正しく把握し、常に最適な環境でPHPを運用しましょう。
