PHP
phpmd
phpcs
静的解析

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 をお願いします。