LoginSignup
8
6

More than 1 year has passed since last update.

macにPHP8.1をインストールする。

Last updated at Posted at 2022-02-19

おおお!!めっちゃ構文エラー出してますやん
なんで、みんな気づかないんだろう。

「いや、自分のPHPのversionが古いだけじゃん」

アップデート方法

結論

まずインストールしてリンクさせます。

$ brew install php@8.1 && brew link --force php@8.1

しかし、これではバージョンは変わりません。

$php -v
PHP 8.0.15 (cli) (built: Jan 21 2022 04:47:57) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.15, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.15, Copyright (c), by Zend Technologies

そこでパスを通します。

$ echo 'export PATH="/usr/local/opt/php@8.1/bin:$PATH"' >> ~/.zshrc 
$ echo 'export PATH="/usr/local/opt/php@8.1/sbin:$PATH"' >> ~/.zshrc

.zshrcを開いて確認します。(ここで書いてもおkです)

$ vi ~/.zshrc    

しっかりパスが記述されていることを確認したら、反映させます。

$ source ~/.zshrc

これでバージョンが更新されています。

$php -v
PHP 8.1.2 (cli) (built: Jan 21 2022 04:47:26) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.2, Copyright (c), by Zend Technologies

VS Code側でもバージョンをアップグレードさせます

スクリーンショット 2022-02-19 10.57.48.png
設定から、 Environment: PHP Versionを検索すれば、バージョンを記載する箇所が出てきます。
こちらを反映させましょう。

これで大丈夫です。
PHP8.1の記述豊富が利用可能になります。

なお、setting.jsonからもPHPのバージョンを設定することができます。

スクリーンショット 2022-02-19 11.00.32.png

先ほど変更したIntelephense › Environment: PHP Versionが反映さrて、
"intelephense.environment.phpVersion": "8.1.2",と記載されていますね。

スクリーンショット 2022-02-19 11.03.09.png

悪戦苦闘した

$ brew search php@8.1 
==> Formulae
php@8.1                               php@8.0 ✔                             php@7.4 ✔                             php@7.3                               php@7.2

でバージョンがあることを確認

自分の場合、php@8.0php@7.4を入れています。
ですが、これだとphp@8.1の書き方はエラーとみなされます。

こちらなど利用することができません
https://www.php.net/manual/ja/unitenum.cases.php

$ brew install php@8.1

ということで、早速インストールしていきます。

$brew unlink php@8.0
Unlinking /usr/local/Cellar/php@8.0/8.0.15... 0 symlinks removed.

インストールできたので、php@8.0は解除します。

$brew link php@8.1  
Warning: Already linked: /usr/local/Cellar/php/8.1.2
To relink, run:
  brew unlink php && brew link php

そして、新たにphp@8.1 を紐付けましいた。

$brew unlink php && brew link php
Unlinking /usr/local/Cellar/php/8.1.2... 24 symlinks removed.
Linking /usr/local/Cellar/php/8.1.2... 24 symlinks created.

念の為、指示通りに紐付けました。

$php -v
PHP 8.0.15 (cli) (built: Jan 21 2022 04:47:57) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.15, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.15, Copyright (c), by Zend Technologies

変わってないやないかーい。

$brew unlink php@8.0 && brew link --force php@8.1
Unlinking /usr/local/Cellar/php@8.0/8.0.15... 0 symlinks removed.
Warning: Already linked: /usr/local/Cellar/php/8.1.2
To relink, run:
  brew unlink php && brew link php
$php -v
PHP 8.0.15 (cli) (built: Jan 21 2022 04:47:57) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.15, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.15, Copyright (c), by Zend Technologies

パスを取り込みます。

$ echo 'export PATH="/usr/local/opt/php@8.1/bin:$PATH"' >> ~/.zshrc 
$ echo 'export PATH="/usr/local/opt/php@8.1/sbin:$PATH"' >> ~/.zshrc

.zshrcを開いて確認します。(ここで書いてもおkです)

$ vi ~/.zshrc    

しっかりパスが記述されていることを確認したら、反映させます。

$ source ~/.zshrc

これでバージョンが更新されています。

$php -v
PHP 8.1.2 (cli) (built: Jan 21 2022 04:47:26) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.2, Copyright (c), by Zend Technologies
8
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
6