Posted at

PHPの静的コード解析をかんたんに導入する

PHPの静的コード解析をかんたんに導入できるように Composer のパッケージにしました。

grohiro/php-ruleset: Ruleset for PHP

出力例

スクリーンショット 2018-11-07 21.21.46.png

フレームワークは Laravel と CakePHP のルールセットが入っています。CakePHP はアンダースコア付きのメソッド名やプロパティ名を使用するので一部のルールを無効化しています。もちろんこの2つ以外のフレームワークでも使えます。

PHP_CodeSniffer(phpcs) をインストールするとコードを自動で修正するためのコマンド phpcbf も一緒にインストールされるので使えるようにしてあります。composer run cs-fix を実行してください。

詳細はリポジトリのREADME.mdをご覧ください。


ルールセットのカスタマイズ

ルールセットをカスタマイズする方法は3つあります。



  1. composer installした後に vendor/grohiro/php-ruleset のルールを変更する

  2. リポジトリを fork してカスタマイズする

  3. PullRequest を送る

1の方法はローカルのみで有効です。チームで共有する場合には不便です。2はチームで共有したり、社内用にカスタマイズするときに有用です。README.md のリポジトリ URL は適宜変更してください。

新しいフレームワークの対応や共通で使えるようなカスタマイズはぜひ PullRequest をお願いします。