けけずんセルフハッキング

忘れそうなことをメモる。

PhpStorm+phpcsでシンタックスチェック

概要

PhpStormのデフォの機能だけでシンタックスチェック出来るかと思って色々探してみたが、見つからず。 諦めてphpcsをインストールしてそれを使ってシンタックスチェックをするようにしてみる。

手順

参考にした記事とまんま同じこと書いてるだけ。

Terminalでやること

composerをインストールする

phpcsをインストールするためにcomposerコマンドを使用するので、brewコマンドでcomposerをインストールする。

$ brew install homebrew/php/composer

phpcsをインストールする

composerコマンドでphpcsをインストールする。 システム全体で使用できるようにglobalにインストールする。

$ composer global require "squizlabs/php_codesniffer=*"

試しに実行してみる。

$ phpcs -i
The installed coding standards are PEAR, Zend, PSR2, MySource, Squiz and PSR1

出来てるっぽいのでオッケー。 この後でPhpStormの設定をする際にphpcsのパスを入力する必要があるので、以下のコマンドでパスを確認しておく。

$ where phpcs
/Users/[ユーザ名]/.composer/vendor/bin/phpcs

PhpStormでやること

Languages & Flameworksの設定

"PhpStorm"->"Preferences"を開く。 サイドバーの"Languages & Frameworks"->"PHP"->"Code Sniffer"を選択する。 "Configuration"の右側にある"..."(何だこれ)をクリックする。 "PHP Code Sniffer (phpcs) path"欄の右側にある入力欄に先ほどのphpcsのパスを入力する。 "Validate"をクリックしてパスを検証、特に問題がなければ"OK"をクリックする。

PHP Code Sniffer validationの設定

"PhpStorm"->"Preferences"を開く。

サイドバーの"Editor"->"Inspections"を選択する。 "PHP"->"PHP Code Sniffer validation"の右側にあるチェックボックスにチェックを入れ、"Options"->"Coding standard"の右側にあるリロードマークをクリックし、選択欄から"PSR2"(ここに関してはお好みで)を選択する。

以上の設定でシンタックスチェックが行われるが、デフォだとどの箇所が規約に沿っていないのかが分かりづらいので、規約に沿っていない箇所の色を変えて分かりやすくする。 サイドバーの"Editor"->"Inspections"を選択する。 "PHP"->"PHP Code Sniffer validation"を選択した状態で、"Options"->"Show warnings as"の右側にある選択欄から"Edit Serverities"を選択する。 "+"ボタンをクリックしてお好みで色を設定し、"OK"をクリックする。

最後に"Preferences"ウィンドウ右下にある"OK"をクリック、これで準備OK。

試しに使ってみる

PSR2に準拠してない行の上にカーソルを合わせると怒られている内容を確認することが出来る。

参考