PHPがインストールされているか確認する方法(Windows・Linux)

WindowsMac更新

PHPのマニュアルによると、php -v というコマンドでPHPのバージョンと、どの種類のPHPかがわかります。コマンドラインで入力し、バージョン番号が表示されればPHPは入っています。その番号を、PHPプロジェクトが2026年10月21日に出した修正版と比べてください。エラーになる場合は、WindowsがPHPを見つけられていません。

要点

WindowsではコマンドプロンプトかPowerShellを開き、php -v と入力してEnterキーを押します。「PHP」とバージョン番号で始まる行が出ればPHPは入っています。エラーなら、WindowsはPHPを見つけられていません。PHP2Shellの修正版は8.5.12、8.4.27、8.3.36、8.2.35なので、これより古ければ、入れたときと同じ方法で更新してください。

WindowsでPHPが入っているか確認するには

コマンドラインを使います。PHPのマニュアルはバージョンを表示するオプションとして -v を挙げていて、コマンドはコマンドプロンプトでもPowerShellでも同じです。

  1. Microsoftのサポートページにある方法で、タスクバーの[検索]を選択し、「コマンド プロンプト」と入力して開きます。Microsoftによると、Windows ターミナルは初期設定ではPowerShellで開くので、そちらでもかまいません。
  2. php -v と入力してEnterキーを押します。
  3. 1行目を見ます。「PHP」、バージョン番号、そしてかっこ内にPHPの種類が続きます。たとえばコマンドライン版なら (cli) と表示されます。

PHPの場所はわかっているのにコマンドが見つからない場合、PHPのマニュアルには、C:\php\php.exe のようにフルパスでPHPを実行する例があります。自分のフォルダに置き換えて C:\php\php.exe -v と入力すれば、そのPHPを確認できます。

Macでも、ターミナルで同じコマンドが使えます。詳しくはMacはPHPの脆弱性の影響を受けるかをご覧ください。

表示された結果は何を意味しますか

バージョン番号が出れば、PHPが入っていて、Windowsがそれを見つけられるということです。PHPプロジェクトの2026年10月21日のアドバイザリは、2件の深刻な脆弱性(CVE-2026-109618、CVE-2026-109619)をPHP 8.5.12、8.4.27、8.3.36、8.2.35で修正しています。同じ系列でこれより古い番号なら、更新が必要です。

バージョンの代わりにエラーが出た場合は、Windowsが php を見つけられなかったということです。PHPのマニュアルは、どのフォルダからでもPHPを実行できるようにするには、PHPのある場所を環境変数PATHに追加すると説明しています。エラーはたいていPHPが入っていないことを意味しますが、PATHに入っていないPHPがある場合もあります。

アドバイザリが危険にさらされているとしているのは、ウェブのリクエストを処理するPHPで、PHP-FPM、ApacheのPHPモジュール(mod_php)、php-cgiなどです。コマンドラインだけで使うPHPには触れていないので、その使い方が安全だとは言えません。英国のNCSCは、どのバージョンであれPHPを使っている組織は影響を受けるとしています。PHP 8.1以前は、PHPプロジェクトからの更新はもうありません。2026年10月23日時点で、米国のCISAは10月21日の注意喚起(10月23日改訂)で、公開した時点ではこれらの脆弱性が実環境で悪用に成功した例を観測していないとしています。

どんな人のパソコンにPHPが入っていますか

主に、ウェブサイトを作ったりテストしたりする人です。PHPのマニュアルは、サーバーサイドのスクリプトをPHPの中心となる分野としています。

Windowsについては、php.netのダウンロードページが独自のZIPファイルのほか、Winget、Chocolatey、Scoop、Docker、WSL(DebianやUbuntu)での入れ方を挙げています。マニュアルは、ApacheやIISといったウェブサーバーと一緒にPHPを動かす方法も扱っています。

PHPは、ほかの製品の中に入っていることもあります。JPCERT/CCは、PHPを使用する製品もこの脆弱性の影響を受ける可能性があるとし、提供元の情報を確認するよう求めています。

WindowsのPHPを更新したり削除したりするには

入れたときと同じ方法で更新します。PHPのアドバイザリは、Windows用のバイナリはphp.netのダウンロードページにあるとしています。2026年10月23日時点で、そのページには2026年10月21日付のWindows向けPHP 8.5.12が載っています。

  1. php.netのZIPファイル。 php.netのWindows向けダウンロードから修正版を入れます。ページは、コマンドラインやIISでFastCGIとして使う場合はNon-Thread Safe(NTS)版、Apacheで使う場合はThread Safe(TS)版を使うよう書いています。ほとんどのWindowsでx64版を勧めています。
  2. Winget。 php.netが示す8.5のインストールコマンドは winget install PHP.PHP.8.5 です。Microsoftのドキュメントによると、引数なしの winget upgrade で更新できるアプリの一覧が表示され、winget uninstall で指定したアプリをアンインストールできます。
  3. ChocolateyやScoop。 同じツールの更新コマンドでPHPを更新します。
  4. PHPを同梱した開発ツール。 ツールを更新するか、提供元のサイトで修正版のPHPを含むリリースがあるか確認します。

削除も同じ方法で行います。Microsoftは、「スタート」>「設定」>「アプリ」>「アプリと機能」で削除するアプリを見つけ、「その他」>「アンインストール」を選ぶ方法も示しています。セットアップの説明どおりにPHPのフォルダをPATHに追加していた場合は、フォルダを消すときにその設定も外してください。

更新したら、もう一度 php -v を実行して、番号が変わったことを確かめます。

Linuxで確認するには

ターミナルで php -v を実行します。PHPのマニュアルによると、ほとんどのLinuxディストリビューションには、パッケージシステムを通じて使えるPHPがあります。php.netは、こうしたビルドにはビルドの提供者が加えたパッチが含まれていて、PHPプロジェクトはそれを管理できないとしています。JPCERT/CCも、Linuxディストリビューションが提供するPHPも影響を受ける可能性があるとしています。ディストリビューションのパッケージマネージャで更新し、そのセキュリティ情報も確認してください。アドバイザリは、修正をバックポートしているディストリビューションもあるとしています。

ウェブサイトを見るのにPHPは必要ですか

必要ありません。PHPのマニュアルによると、PHPのコードはサーバーで実行され、その結果がブラウザに送られます。ブラウザは結果を受け取るだけで、元のコードを知ることはできません。つまりPHP2Shellは、サイトのサーバー側の問題です。閲覧者の側については改ざんされたサイトを見ただけで感染するかで説明しています。

Failshotについて

Failshotは、Macのための「2つ目の層」のデバイスセキュリティ(second layer device security)です。パスワードが1つ目の層で、Failshotはその次の層です。

Failshotは、誰かがあなたのMacの前に座り、ロックを解除する瞬間のためのものです。オンの間は、Macのロックを解除した人の写真を撮り、Pro では続けて5秒間の動画も記録します。Failshotのウインドウは、ロック解除が撮影されたことを解除した人に知らせます。オフにしたり、メニューから終了したりするには、Touch IDかFailshotのPINと答えが必要で、Macのパスワードでは操作できません。

MacアプリはmacOS 14以降に無料でダウンロードできます。無料で使えます。Pro では動画、メール通知、暗号化された Vault が加わります。Failshot Proは、failshot.appで7日間無料で試せます。申し込み時にカードを登録し、解約しない限り8日目に請求されます。アプリは英語版のみです。iPhone、Android、Windows版は準備中です。

よくある質問

WindowsにはPHPが最初から入っていますか

PHPのマニュアルのWindowsのページは、PHPを公式リリースから入れる方法(実運用での使用が推奨されています)と、ソースコードからビルドする方法を説明しています。自分のパソコンにPHPがあるかどうかは、php -v を実行するのがいちばん早い確認方法です。

バージョン番号のあとの (cli) とは何ですか

応答したPHPの種類です。PHPのマニュアルによると、-v ではSAPI名、つまりPHPが動いているインターフェイスの名前が表示され、cliはコマンドライン版です。今回の脆弱性が影響するのは、ほかのインターフェイスで動く、ウェブのリクエストを処理するPHPです。

複数のバージョンのPHPが入っていることはありますか

あります。php.netはWindows向けに複数のバージョンを出していて、開発ツールが自分用のPHPを持っていることもあります。php -v が示すのは、WindowsがPATHを通じて見つけたPHPだけなので、ほかのPHPはフルパスで確認してください。

最新版に更新すれば十分ですか

PHPプロジェクトは、完全な解決策は更新だけだとし、挙げている設定の変更は露出を減らすだけで、インストールを安全にするものではないとしています。10月23日には、さらに別の、起こりにくい問題(CVE-2026-115560)についての情報も出しています。詳しくはPHP2Shellの解説をご覧ください。

出典