PHP5とPHP7の共存 on Windows 10
今回は、研修中に偶然私のPC(Windows 10)上で出来上がったPHP5とPHP7の共存方法をご紹介させていただきます。
以下のようにコマンドプロンプト上において、php とコマンドを打てばPHP7が、php5 とコマンドを打てばPHP5が起動するようにしました。
これによってPHP5では動作するけれど、PHP7では動作しないといったコードの検証を素早く行うことが出来ます。
環境構築の大まかな流れは以下になります。
1. PHP5 用のXAMPPをインストール
2. PHP7 用のXAMPPをインストール
3. コマンドプロンプトからコマンドが呼び出せるように、それぞれ環境変数にパスを追加する
4. コマンドプロンプトにおいて、php、php5 エイリアスを定義する
1~2. PHP5とPHP7 用のXAMPPをインストール
以下からPHP5とPHP7用のXAMPPをダウンロードしてきます。
その際にPHP5用のXAMPPは、保存する際のディレクトリ名をxampp5として下さい。
(スタートメニューがどちらか一つしか表示されないため、先にあまり使わない方からインストールした方がいいかもしれません。)
インストール後のディレクトリ構成は以下になります。
* C:\xampp5
* C:\xampp
コントロールパネルは、それぞれのディレクトリ配下にインストールされております。
3. 環境変数のパスに追加
コマンドプロンプト上からphpコマンドをそれぞれ呼び出せるように環境変数にパスを追加します。
1. 環境変数アプリを起動
2. Pathを選択した状態で、編集ボタンをタップし、「環境変数名の編集」画面を起動
3. 以下を追加する
* C:\xampp5
* C:\xampp
4. エイリアスの設定
上記のままだとどちらか一方のみしか呼び出せないため、エイリアスを定義します。
(おそらくですが、環境変数に先に定義されている方が呼び出されます。)
私の環境では、今の状態からだと phpとコマンドをするとPHP7が呼び出されます。
そこでPHP5に対して、php5というエイリアスをコマンドプロンプト上で、以下のように設定します。
> doskey php5=C:\xampp5\php\php $*
ただこれですと毎回コマンドプロンプトを立ち上げるたびにエイリアスが消えてしまいますので、
コマンドプロンプトのAutoRunで指定しているバッチファイルに上記を定義しておくと更に便利になります。
(初期化用のバッチファイルの追加方法は「コマンドプロンプト、AutoRun」で検索して下さい。)
以上、Windows 10上でPHP5とPHP7を共存させる方法のご紹介でした。
木曜日担当 yoshimoto
yoshimoto at 2018年05月17日 10:10:09