はじめに
MacはデフォでPHPがインストールされているけど、開発する際に指定したPHPバージョンを使いたい!
しかし、、WindowsのようにPHP公式サイトでダウンロードしPATHを通すことが難しい。。
Homebrewだとバージョンの[x.x.★]の★部分まで選べない。。
phpbrewならバージョンの指定ができ、複数のバージョンを切り替えることができる為、
phpbrewを使って好きなバージョンを取得してみました。
環境
- macOS 10.15.7
- Homebrew 2.5.11
- phpbrew 1.26.0
事前準備
Homebrewというツールを使用するので事前にインストールしておきます。
インストール方法は以下サイトを参考にしました。
phpbrew本体のインストール
公式ドキュメントを参考に以下コマンドを実行していきます。
// ダウンロード
$ curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar
$ chmod +x phpbrew.phar
// $PATH の通っているディレクトリにファイルを移動
$ sudo mv phpbrew.phar /usr/local/bin/phpbrew
// セットアップ
$ phpbrew init
$ echo 'source ~/.phpbrew/bashrc' >> ~/.bashrc
$ phpbrew lookup-prefix homebrew
以上を実行したら、$ phpbrew
で確認します。
$ phpbrew
______ _ _ ____________
| ___ \ | | || ___ \ ___ \
| |_/ / |_| || |_/ / |_/ /_ __ _____ __
| __/| _ || __/| ___ \ '__/ _ \ \ /\ / /
| | | | | || | | |_/ / | | __/\ V V /
\_| \_| |_/\_| \____/|_| \___| \_/\_/
Brew your latest php!
この表示が出ればOKです。
インストール可能なPHPバージョンの確認
$ phpbrew known
を実行すると、インストール可能なバージョンが一覧で表示されます。
$ phpbrew known
7.4: 7.4.12, 7.4.11, 7.4.10, 7.4.9, 7.4.8, 7.4.7, 7.4.6, 7.4.5 ...
7.3: 7.3.24, 7.3.23, 7.3.22, 7.3.21, 7.3.20, 7.3.19, 7.3.18, 7.3.17 ...
7.2: 7.2.34, 7.2.33, 7.2.32, 7.2.31, 7.2.30, 7.2.29, 7.2.28, 7.2.27 ...
7.1: 7.1.33, 7.1.32, 7.1.31, 7.1.30, 7.1.29, 7.1.28, 7.1.27, 7.1.26 ...
7.0: 7.0.33, 7.0.32, 7.0.31, 7.0.30, 7.0.29, 7.0.28, 7.0.27 ...
5.6: 5.6.40, 5.6.39, 5.6.38, 5.6.37, 5.6.36, 5.6.35, 5.6.34, 5.6.33 ...
5.5: 5.5.38, 5.5.37, 5.5.36, 5.5.35, 5.5.34, 5.5.33, 5.5.32, 5.5.31 ...
5.4: 5.4.45, 5.4.44, 5.4.43, 5.4.42, 5.4.41, 5.4.40, 5.4.39, 5.4.38 ...
今回は " 7.4.5 " をインストールしていきます。
指定したバージョンのPHPバージョンをインストール
$ phpbrew install
コマンドを実行し、__php-7.4.5__をインストールします。
(デフォルトを7.4.5にしたいので、+default
を末尾に付け足します。)
$ phpbrew install 7.4.5 +default
===> phpbrew will now build 7.4.5
You haven't enabled any variants. The default variant will be enabled:
[bcmath, bz2, calendar, cli, ctype, dom, fileinfo, filter, ipc, json, mbregex, mbstring, mhash, pcntl, pcre, pdo, pear, phar, posix, readline, sockets, tokenizer, xml, curl, openssl, zip]
Please run 'phpbrew variants' for more information.
===> Loading and resolving variants...
Homebrew prefix "/usr/local/Cellar/libxml2/2.9.10" does not exist.
Homebrew prefix "/usr/local/Cellar/bzip2/1.0.8" does not exist.
Homebrew prefix "/usr/local/Cellar/mhash/0.9.9.9" does not exist.
Homebrew prefix "/usr/local/Cellar/curl/7.68.0" does not exist.
Downloading https://www.php.net/distributions/php-7.3.14.tar.bz2 via curl extension
dose not exist.
ソフトウェアが存在しないと言われてしまいました。。
足りないソフトウェアをbrew install
コマンドでまとめてインストールします。
$ brew install libxml2 bzip2 mhash curl
よしよし、再度チャレンジです。
改めてインストール
インストール完了するまでに時間がかかるので、休憩がてら猫と戯れてました。
$ phpbrew install 7.4.5 +default
(略)
* WARNING:
You haven't setup your .bashrc file to load phpbrew shell script yet!
Please run 'phpbrew init' to see the steps!
To use the newly built PHP, try the line(s) below:
$ phpbrew use php-7.4.5
Or you can use switch command to switch your default php to php-7.3.14:
$ phpbrew switch php-7.4.5
Enjoy!
インストール完了です!
再起動
インストールしたらコマンドプロンプトを再起動してsource
コマンドを実行します。
$ source ~/.phpbrew/bashrc
インストール済みのPHPバージョンを確認
list
コマンドを実行してインストールされたか改めて確認します。
$ phpbrew list
* php-7.4.5
さらにphp -v
でバージョンが7.4.5になっているか確認します。
$ php -v
PHP 7.4.5 (cli) (built: Nov 25 2020 23:12:04) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
php-7.4.5を使えるようになりました!
他バージョンの確認・切り替え
インストールした別のバージョンを確認し切り替えます。
1. インストール済みのバージョンを一覧で確認
$ phpbrew list
php-7.4.6
* php-7.4.5
"*"は現在使用されているバージョンです。
7.4.6に切り替えてみる。
2. バージョンの切り替え
// 7.4.6を使用する
$ phpbrew use php-7.4.6
// 切り替わったか確認
$phpbrew list
* php-7.4.6
php-7.4.5
切り替わりました!
最後にphp -v
でバージョンが7.4.6になっているか確認
$ php -v
PHP 7.4.6 (cli) (built: Nov 26 2020 00:53:12) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
7.4.6に切り替えることができました!
最後に
ここまで行き着くのに2日かかりました (›´ω`‹ )
これからコマンド慣れしていかねば、、!