PCのなかに、すでに、PHP7のXAMPPが入っているという前提で、あたらしくPHP8のXAMPPを導入する手順を解説していきますね。
OSはWindowsを使って操作していきます。
なお操作実施前に、もしXamppを起動させていたら、止めておいてください。
次のように3か所ボタンをクリックします。
それでは、説明していきますね。
XAMPPで複数のPHPバージョンをひとつのPCで使う方法【Windows】
① 下記リンク先を開きます。
② ご希望のバージョンを選択してください。
本記事では、PHP8.0.15を新たに使うとします。8.0.15をクリックします。
③ 下記のようなページが出てきます。
portable, Zip形式のファイルをクリックし、ローカル環境にダウンロードします。
④ ローカル上でZipファイルを解凍します。分かりやすいようにxampp80という名前にします。
C:\ の中に【xampp_new】というフォルダを作り、解凍したファイルを、この中に入れます。
⑤ C:\xampp_new\xampp80の中のsetup_xampp.batファイルをダブルクリックして実行します。
このバッチファイルによって、「この場所にありますよ」と、XAMPPの中にあるphp.iniなどの設定を書き替えてくれます。
もしフォルダを移動したら、setup_xampp.bat を実行し直すようにしてください。
⑥ 次に、新しく入れたXamppを使うプロジェクトを移動させておきます。
わたしの場合は、C:\xampp_new\xampp80\htdocs\laravelの中にプロジェクトフォルダを設置します。
必須ではないものの、こうしておくと、プロジェクトの場所を指定するのに便利です。
⑦ これで完了です。
これから、切り替えの際には、停止したいXAMPPのコントロールパネルで、apacheとmySQLを停止した後、動かしたいXAMPPのコントロールパネルで、apacheとmySQLを起動するようにしてください。
同じポートを使うため、片方が動いていると、もう片方はエラーが発生して、開始できないからです。
新しくいれたXAMPPを起動するには、C:\xampp_new\xampp80の中のxampp-control.exeファイルをクリックします。
今後のためにショートカットを作っておいても良いですね。
なお旧版のXAMPPと新版のXAMPPのEXEファイルは、外見が同じなので、分かりにくいです。間違えないようにしてくださいね。
⑧データベースも、新たに作成してください。
⑨コマンドからデフォルト以外のPHPを使う場合には、XAMPPのフォルダを指定するようにしてください。
たとえば、【php artisan migrate】というコマンドを、新版XAMPPに入っているPHPで実行するときは、次のようにします。
1 |
C:\xampp_new\xampp80\php\php.exe artisan migrate |
毎回長々と入力するのはちょっと面倒かも。
お好みでパスを作り変えてしまったほうが良いかもしれません。
⑩ コマンドからデフォルト以外のcomposerを使う場合にも、XAMPPのフォルダを指定するようにしてください。
たとえば、Laravelプロジェクトを作成する場合は次のコマンドを実行します。
1 |
composer create-project --prefer-dist laravel/laravel members |
普通にコマンドを入れると、デフォルトの場所にあるXAMPPが使われてしまいます。
新しくいれたXAMPPを使いたい場合には、次のようにコマンドを入れてください。
*上記だとハイフンがつながって見えますが、prefer-distsの前には、ハイフンを2ついれます。
このコマンドの意味を解説します。
ちょっとややこしいので、興味がある方だけ、見てください。
最初の赤色部分は、phpファイルの場所です。
次の青色部分は、composerの場所です。”which composer” を実行すると、composerの場所が表示されます。
このcomposerファイルは実は人が見て分かるスクリプトになっています。
エディタで開くと、下図のように表示されます。
このcomposerファイルの一番下の行は、php “${dir}/composer.phar” “$@” と書いてあります。
このことから結局 composer は、php を使ってcomposer.pharを実行するという意味になります。
今回、パスの通っていない別のphp で実行したいので、composer を実行せず、composer.phar を直接呼び出すことにします。
つまり、指定したPHPでcomposer を実行するためには、赤色部分と青色部分を組み合わせて、Laravelプロジェクト作成コマンドを作ると、次のようになります。
1 |
C:\xampp_new\xampp80\php\php C:\ProgramData\ComposerSetup\bin\composer.phar create-project --prefer-dist laravel/laravel members |
余談:xamppの中の php フォルダだけを切り替える方式は断念しました。
異なるバージョンのXAMPPを併用するには、最低限の部分だけファイルを2つ準備して、他の部分は共有する、といった方法もあります。
この場合、シンボリックリンクを利用して切り替えを行います。
わたしは最初この方法を使っていました。ただ、どうもうまくいかず、phpMyAdminエラーが起こったりしまして。
別の記事で解説していますが、トラブルが増えました。
そこで、今回ご紹介したように、ファイル共有をしない方法を取ることにしました。
参考になるかもしれないので、お伝えしておきますね。
さいごに
わたしはLaravel9を使うためにPHP8以上が必要になり、今回の新版XAMPPを入れました。
ローカル環境でPHP8を使った場合には、本番環境でも、PHP8が必要となります。
バージョンアップやLaravel9に関連する記事は他にもあります。お困りのことを解決できるものがないか、見てみてくださいね。