プログラミング用エディタのVisual Studio Code(VSCode)にPHP環境を作ります。
難しいことはしません。エディタがおすすめする拡張パッケージをインストールして、静的コードチェックツールのパッケージも入れましょう。
(ただし、別途インストールが必要なツールがあります。)
エディタが推奨するパッケージが無難。
VSCodeは、それだけでは開発環境としては足りないところがたくさんあります。それを補うために無数の拡張パッケージが用意されています。
まずはPHP用のおすすめパッケージをインストールしましょう。
VSCodeはありがたいことに、ファイルを開くだけで基本的なパッケージのインストールを促されるし、パッケージ画面を開けば推奨パッケージのリストが表示されます。
それに従ってインストールするだけなので難しくないでしょう。
PHPでは3つのパッケージをインストールします。
PHP Extension Pack
PHPではまず、PHP Extension Packのパッケージをインストールします。PHPファイルを開いたときにポップアップが出るので、素直にインストールボタンを押しましょう。
インストールせずにポップアップを消してしまうと、しばらく表示されません。そのときは慌てずにパッケージ検索で "php" と入力すれば上位表示されるはずです。
このパッケージは単体では意味がありません。このパッケージの中身は2つの子パッケージをもつ親パッケージです。
だから『Pack』が名称に付いてます。
PHP Debug
PHP Debugパッケージは、PHP Extension Packをインストールすると付随してインストールされる子パッケージです。
XdebugをVSCodeで使うためのもの。
もちろんですが、PHP実行環境にXdebugのインストールが必要。
Xdebugにはリモートデバッグという機能があるので、自分の開発PCでPHPプログラムを実行しない限りインストールする必要はありません。
たとえば、Virtual Boxなどの仮想環境にPHP実行環境があるなら仮想環境内にXdebugをインストールします。
PHP IntelliSense
PHP IntelliSenseパッケージも、PHP Extension Packをインストールすると付随してインストールされる子パッケージです。
関数や変数などの入力補完機能のパッケージ。
Ctrlを押しながら関数などクリックすると定義されてるところへジャンプする機能もあります。
とりあえずこの3つがあればPHPプログラミングで困ることはありません。
PHP Intelephense
PHP Intelephenseはいわゆるフォーマッターです。ポップアップでおすすめされたのでインストールしましたが、フォーマッターは後述する、静的コードチェックツールを使ってるので個人的にはいらないと思う。
ちなみにこれは、PHP Extension Packとはまったくの無関係です。PHP IntelliSenseとスペルが似ているところがややこしい。
静的コードチェックツールのパッケージ
PHPはかつては自由なプログラミングを許されるゆるいものでしたが、コーディング規約を遵守する流れになっています。
ツールで有名なところでは、PHP_CodeSnifferとPHP_CS_Fixerでしょう。
これらのツールを使うためのパッケージも用意されています。あまりにもたくさんのパッケージがあるので、ここでは、ダウンロード数と☆数が多いものを紹介します。
PHP_CodeSnifferのパッケージ
PHP Sniffer & Beautifier
これは個人的におすすめすものです。PHP_CodeSnifferの2つのコマンドが使えるパッケージ。
コマンド | |
---|---|
phpcs | 静的コードチェックを実行 |
phpcbf | コードの一括・自動整形。 いわゆるフォーマッター。 |
PHP_CodeSniffer用のパッケージはたくさんあるんですが、両コマンドを備えたものは結構少ないです。その中でもこのパッケージはダウンロード数・☆数が最も高いもの。
唯一弱点があるとすれば、ファイルの保存時に自動整形する機能があるらしいんですが、ボクの環境では動作しない。
(どこで設定するのか分からない。)
まぁ、他者が作成したコードを1行編集しただけなのに、勝手にコード全体を整形されても困るので、逆に動かなくてありがとうと思っていますが。
phpcs
一般的には、phpcsコマンドを使うパッケージはこれがベストだと思われるもの。パッケージの推奨マークが付いているし。
ただボクがこれを使わない理由は、パッケージのロゴも名前も全く同じで、パッケージ説明の文言が同じのパクリパッケージ? があるので、ややこしいから使ってません。
また、パッケージ名でも分かるように、PHP_CodeSnifferのphpcbfコマンドは使えません。
コードのチェック結果はVSCodeの問題ビューに表示されるんですが、フォーマッター機能はありません。
フォーマッターが無いのはちょっと...という感じです。
phpcbf
このパッケージは、PHP_CodeSnifferのフォーマッター用です。phpcsを使っててフォーマッターも欲しいという人向け。
ただし、このパッケージもパッケージロゴと名前、説明の文言まで同じのパクりパッケージ? が存在するのでややこしくて使ってない。
ちなみに、phpcsパッケージとは全く無関係で作者も違います。
逆説で言えば、丸パクりされるほど優秀なパッケージとも言える。
ボクが使ってない理由は、phpcs, phpcbfの両コマンドが使える PHP Sniffer & Beautifier なら1パケで済むのでそれでいいじゃん、と思うから。
あれもこれもインストールというのがどうも好きになれない。
言い忘れるところでしたが、これらのパッケージを使うには、PHPのcomposerを使ってPHP_CodeSnifferをインストールする必要があります。
PHP_CS_Fixerのパッケージ
php cs fixer
PHP_CS_Fixer用のパッケージです。このパッケージも優秀なのか、ロゴが同じでパッケージ説明がパッと見同じの、パッケージ名の大文字小文字がちがう『PHP CS Fixer』というパッケージもあります。
(こっちはパクりと言うより触発されて作りましたという感じ。)
このパッケージを使うには、PHP_CS_Fixerのインストールが別途必要です。
PHP_CS_Fixer は PHP_CodeSniffer と同じような機能・設定方法のツールなんですが、WordPressを使うなら PHP_CS_Fixer の一択になります。
それ以外はお好みでという感じ。