こんにちは。iQeda [@iQeeeda] です。
最初にとりあえずで入れてた VS Code のプラグイン「PHP Intellisense」だったんですが
…と気づきました。どうやら今まで使っていたのは VS Code デフォルトの機能だった模様。
それでもめちゃくちゃ困ったことはなかったものの、せっかくなので今回設定してみました。
目次
(2021 年 8 月 19 日、追記)
PHP IntelliSense がマーケットプレイスで非公開になりました。
PHP Intelephense を代用しましょう。設定方法は同じです!
【VS Code】PHP Intellisense の使い方
PHP Intellisense プラグインを使うためには、以下の手続きが必要です。
PHP 実行ファイルの PATH を php.executablePath
として設定する
…なんですが、仮想環境を使っていると結構ややこしい。
例えば Docker だと、コンテナ環境内に PHP 実行ファイルがありますね。
自分は以下のように対応しています。
- (本末転倒な気もするが) Docker と同じ PHP 環境を Mac 側にも用意する
- その際、phpbrew で Mac 側の PHP バージョン管理をする
- ※ 直接 PHP インストールすると、そのバージョンで環境汚染してしまうからです
今回はこの手順を紹介します! ※ もっと良い方法があれば教えてほしいです。
phpbrew
(追記) 実は、最近の僕は phpbrew よりも phpenv を愛用しています。理由としては anyenv というツールで様々な言語の **env 系ツールを一元管理できる。スピードが早い、など。解説記事リンクを貼っておきますね!
初期設定
phpbrew と依存ライブラリを homebrew でインストールします。
これ全部やってないとエラーでまくります。
xcode-select --install brew install autoconf bzip2 icu4c krb5 libedit libiconv libjpeg libpng libxml2 libzip oniguruma openssl@1.1 pkg-config tidy-html5 gcc re2c bison curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar chmod +x phpbrew.phar # $PATH の通ったディレクトリに phpbrew 実行ファイル移動 (今回は /usr/local/bin) sudo mv phpbrew.phar /usr/local/bin/phpbrew phpbrew init
僕は zsh ユーザなので ~/.zshrc
に以下を追加します。
bash ユーザは ~/.bashrc
に以下を追加してください。
[[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc
phpbrew
を使えるようにするため、 ターミナルを再起動してください。
そのあと、以下のコマンドを実行しておくといいと思います。(任意)
# ライブラリ探索用のプレフィックス設定 (今回はhomebrew) phpbrew lookup-prefix homebrew
PHP インストール・環境に適用する
# リスト最新化して、インストールできるバージョンを表示 phpbrew update phpbrew known # PHP インストール (今回は 7.4.14) phpbrew install 7.4.14 +default # インストールした PHP を環境適用する # もしエラーが出たらターミナル再起動してみてください phpbrew switch 7.4.14 # バージョンが合っていれば OK php -v
2021 年 4 月 14 日現在、PHP 8.0.3 では PHP Intellisense が動きませんでした。。。
PHP 7 系を使うことをオススメします。
VS Code 設定
デフォルトの PHP 設定をオフにする
設定画面の検索バーに「php」と入力して Suggest: Basic
と Validate: Enable
を無効化します。
executablePath を設定する
設定画面の検索バーに「php intellisense」と入力してください。
通常、開発プロジェクトによって PHP バージョンが異なると思います。
なので今回は「ワークスペース」単位で executablePath
を設定します。
# 適用されている PHP コマンドの場所を表示 which php /Users/tak/.phpbrew/php/php-7.4.14/bin/php
{ // 先ほどの PHP コマンドの場所を指定する "php.executablePath": "/Users/tak/.phpbrew/php/php-7.4.14/bin/php" }
VS Code 再起動すれば、PHP Intellisense が使えるようになっているはずです。
コードジャンプ機能が便利。 (なぜオレはあんなムダな時間を・・・)
ユーザ設定
一応、グローバルな executablePath
を設定しておいてもいいでしょう。
# 保有している PHP コマンドの場所を全部表示 where php /Users/tak/.phpbrew/php/php-7.4.14/bin/php /usr/local/bin/php /usr/bin/php
{ // 省略 // 今回は /usr/bin/php を設定 "php.executablePath": "/usr/bin/php" }
phpcs
せっかくなので PHP コーディング規約 (PSR) に沿っているかどうかチェックしてくれる phpcs プラグインも入れましょう。こちらは php-code-sniffer
の存在が前提となるのでインストールします。
brew install php-code-sniffer # PATH 確認 which php-code-sniffer # もしくはこちらで PATH 確認 which phpcs
- VS Code 設定の
phpcs.executablePath
に表示された PATH を設定する - VS Code 設定の json に
"phpcs.standard": "PSR2"
を追記してください
関連記事
お仕事ください!
僕が代表を務める 株式会社 EeeeG では Web 制作・システム開発・マーケティング相談を行っています。 なにかお困りごとがあれば、Twitter DM や Web サイトからお気軽にご相談ください。
カテゴリ「Develop」の最新記事
コメント