MAMPで利用できるPHPのバージョンを変更する方法

MacやWindows PCで手軽にテスト用の開発環境が準備できるMAMP。利用するにあたり少し気になる設定が、PHPソフトウェアのバージョンかと思います。
MAMPはリリースされた時のバージョンによって、利用できるPHPバージョンがメジャーバージョン2つ前ほどから複数のバージョンと、その時々の最新バージョンが利用できるようになっています。
そして、MAMPのコントロールパネルで選択できるバージョンは2つとなっており、いくつかのバージョンから自由に選ぶことができません。
PHPのサポート状況を意識した開発や細かなバージョンでのテストを必要とする場合、MAMPに含まれているPHPソフトウェアから、自由にバージョンを選択して利用していく必要があります。
ここでは、MAMPで利用できるPHPバージョンの変更方法についてご紹介します。
macOSでご紹介していきますが、Windows版のMAMPも同じ流れになります。
利用するPHPバージョンの確認
まずは、利用できるPHPバージョンを確認しましょう。
アプリケーションフォルダにインストールされているMAMPの関連ファイルがあります。
そしてMAMPのbin(バイナリ)の中のphpディレクトリに、各バージョンのPHPファイル群が格納されています。
MAMPの仕様では、最新バージョンと1つ前のメジャーバージョンが利用できるようになっています。(サンプルではphp8.2.0とphp7.4.33)


PHPの学習やWebサイト制作、Webアプリケーション開発をテストしていくのであれば、PHPは最新バージョンを利用していく方がいいですが、WordPressなどのオープンソースCMSをテストするときなどでは、利用しているプラグインがPHPの最新バージョンをサポートしていなくて動かないといったこともあるので、安定版のパージョンでテストしていきたいところです。
利用するPHPバージョンの変更
選択できるPHPバージョンを変更する前に、MAMPサーバを停止しておきます。
そして、先ほど確認しましたMAMPのPHPディレクトリに進み、利用しないPHPバージョンのディレクトリの名前を、先頭にアンダースコア(_)を付けてリネームします。
リネームすることで対象のPHPバージョンが無効となり、新たな最新バージョンが選択・利用可能となります。


また、利用するPHPのバージョンを変更した際は、WebサーバのApacheやNginx、データベースのMySQLのポート番号がMAMPのデフォルト(Apache Port, Nginx Port: 8888、MySQL Port: 8889)に戻ることがあり、コントロールパネルは立ち上がりますがMAMPが起動できないので、コントロールパネル左上のPreferences(環境設定)からPortsタブに進み、ApacheとNginxが80番ポート、MySQLが3306番ポートとなっているのを確認してください。
デフォルトに戻っている場合は、「Set Web & MySQL port to:」の項目から「80 & 3306」のボタンを選択して、一瞬で変更できます。(手入力でもOK)

これで、利用するPHPバージョンの変更準備が完了です。
最後に、コントロールパネルで利用するPHPバージョンを選択しておき、ApacheとNginx、MySQLのポート番号を確認できましたら、一度MAMPを終了して再起動します。
再度MAMPを起動してコントロールパネルを立ち上げ、MAMPサーバーを起動(Start)すれば、選択したPHPバージョンでテスト開発や学習が進められます。
Windows版のMAMPも同様
Windows版のMAMPでは、最新バージョンと1つ前のバージョンの2つが選択できるようになっています。
(サンプルではphp8.1.0とphp8.0.1)
インストール先のCドライブから「MAMP > bin > php」と進み、無効とするPHPバージョンのディレクトリの名前を、先頭にアンダースコア(_)を付けてリネームし、選択して利用するバージョンを2つ確認しておきましょう。

ディレクトリの名前をリネームできましたらMAMPを再起動します。
コントロールパネル左上の「MAMP」から「Preferences(環境設定)」を選択して、PHPのタブよりVersionの選択を確認し、利用するPHPバージョンを選択します。

PHPバージョンを変更した際は、ApacheやNginx、MySQLのポート番号も確認しておきましょう。
MAMPのPreferences(環境設定)に進み、Portsのタブにて確認・変更ができます。

余談
また、PHPのアクティブサポート(Active support)やセキュリティサポート(Security fixes only)は、以下のオフィシャルサイトから確認できます。
PHP(Supported Versions)
https://www.php.net/supported-versions.php
現在や今後を考えてPHPのバージョンを選択して利用していってください。
MAMPは半年ペースで、マイナーアップデートを含め最新版がリリースされるので、オフィシャルサイトのリリースノートをたまに確認しておくといいでしょう。
MAMP(Release notes)
https://www.mamp.info/en/release-notes/
もしインストールしているMAMPをアップグレードする際は、以下の記事にてアップグレード方法をご紹介していますので、参考にしてみてください。