ブログ


PHP_CodeSnifferとPhpStormでコードスタイルチェック
こんにちは、T.Uです!
前回の記事で、PHP_CodeSnifferについて紹介しました。
今回は、PHP_CodeSnifferとPhpStormを連携してコードスタイルチェックを行う手順を紹介します。
環境
- PHP_CodeSniffer 3.2
- PhpStorm 2023.2.2
- Docker Desktop 4.23.0
PhpStormとは?
PhpStormはJetBrainsが開発している高性能IDEです。
コード補完やコード分析、リファクタリングなど様々な機能が備わっています。
また、データベース操作やXDebugなどと連携もできるのでシステム開発を効率的に進めることができます。
PHP_CodeSnifferでコードスタイルチェック
PHP_CodeSnifferでコードスタイルチェック行うには、Terminalで下記のコマンドを実行してチェックを行います。
./vendor/bin/phpcs --standard=phpcs.xml ./
この方法でコードスタイルチェックを行うことはできますが、毎回コマンドを実行するのは面倒ですし、チェックを行うのを忘れる場合もあります。
コードを書くタイミングでチェックされ、コーディング規約に沿ってコードを書くことができると、効率的に進めることができます。
PhpStormで自動チェック
PhpStormの機能を使って、コードスタイルチェックができるように設定をしていきます。
SettingsからQuality Tools を開き、PHP_CodeSnifferの設定を行います。
今回はmacにインストールされているPHPではなく、Dockerコンテナ内にインストールされているPHPを使用するので、「…」をクリックして設定を追加します。

「+」をクリックします。

次に、「…」をクリックします。

次に、「+」をクリックします。

「+」をクリックすると、どのような種類のInterpreterを登録するか選択肢が表示されるので、「From Docker, Vagrant, VM, WSL, Remote…」をクリックします。

「Docker」が選択されていることを確認し、「New…」をクリックします。

「OK」をクリックして、登録します。

ウインドウが閉じると、先程のポップアップウインドウに戻ってくるので、Serverに「Docker」、Image nameにPHPがインストールされているDockerイメージを選択し、「OK」をクリックします。

PHP versionとConfiguration fileにPHPの情報が表示されていれば、「OK」をクリックしてウインドウを閉じます。
ここでPHP versionが正しく表示されていない場合はどこかの設定が間違っていたり、Dockerがインストールされていない、起動していないなどが考えられます。

先程登録した、Interpreterが選択されていることを確認し、「OK」をクリックします。

「Validate」をクリックして、「OK, PHP_CodeSniffer version 3.7.2 (stable) by Squiz (http://www.squiz.net)」と表示されていることを確認し、「OK」をクリックしてウインドウを閉じます。

PHP_CodeSnifferを「ON」にして、「OK」をクリックしてウインドウを閉じます。

ここまで設定できたら、コーディング規約に違反している箇所に警告が表示されるようになります。

また、「PHP Code Beautifier and Fixer: fix the whole file」を実行すると、違反している箇所を自動的に修正することができます。

警告が表示されない場合は、インスペクション設定でPHP_CodeSnifferの検証が有効になっていない場合があります。
その場合は、設定を開き、Editor | InspectionsのPHP_CodeSniffer validationにチェックが入っているか確認して、チェックが入っていない場合は、チェックを入れて、「OK」をクリックして閉じます。

株式会社ウイングドアは福岡のシステム開発会社です。
現在、私達と一緒に"楽しく仕事が出来る仲間"として、新卒・中途採用を絶賛募集しています!
ウイングドアの仲間達となら楽しく仕事できるかも?と興味をもった方、
お気軽にお問い合わせ下さい!