Edited at

Homebrewでインストールした複数バージョンのphpを切り替える (Deprecated)

動作確認はMacにphpをインストールしてローカルで行っています。

しかし、本番環境のphpバージョンと同じバージョンで動かしたいこともあるので、複数のphpバージョンを切り替えたいときがあります。

Homebrewを使う、phpのバージョン切り替え方法です。

コマンドラインで動作するphpとWebサーバー(Apache)で動作するphpのバージョンを変更します。


まずは複数バージョンのphpをインストール

違うバージョンのphpをインストールする前に、今動いているバージョンのphpをunlinkします。

※下記の記述は古いバージョンです。

brew install php56 php56-apcu php56-imagick php56-intl php56-mcrypt php56-opcache php56-xdebug --with-httpd24 --with-libmysql

brew unlink php56

brew install php71 php71-apcu php71-imagick php71-intl php71-mcrypt php71-opcache php71-xdebug
brew install php71 --with-httpd24


切替方法


brewコマンドで対象のphpバージョンを変更

今動いているバージョンのphpをunlinkして、動かしたいバージョンもphpをlinkします。

例えばphp7.2を動かしていて、php5.6にしたい場合は

brew unlink php

brew link php@56


Apache httpd.confを修正

※httpd.confやlibphp*.soの場所は環境によって違います。


/usr/local/etc/httpd/httpd.conf

LoadModule php5_module /usr/local/Cellar/php@5.6/5.6.35/lib/httpd/modules/libphp5.so

# LoadModule php7_module /usr/local/Cellar/php/7.2.4/lib/httpd/modules/libphp7.so

あとはApacheを再起動すれば反映されます。

# Macの場合

sudo apachectl restart