PHP CS Fixer のインストール方法

PHP

PHP CS Fixerは「PHP Coding Standards Fixer」の略で、PHPのコード規約であるPSRに準拠したコードに自動整形してくれる便利なツールだ。

インストール方法

Macであれば、composerもしくは、homebrewでインストールすると良い。今回はcomposerにインストールするという前提で話を進めていく。

早速エラーが出た。すでにグローバルにインストールされているパッケージとの依存関係が解決できないようだ。

packageをcomposer updateでアップデートした後、再度コマンドを実行してみるとうまくいった。

PHP-CS-Fixerの使い方

PHPのプロジェクトに移動し実行する。

上記のコマンドにオプションを追加することもできる。

※ Windowsの場合は、$ php-cs-fixer.bat fix /[対象ファイルパス]で実行可能。

一度実行すると、.php_cs.cacheというファイルが生成されるが、こちらのファイルはおそらくgit管理の対象から除外したほうが良い。

ちなみに、デフォルトではPSR1とPSR2のルールが適用される。

主なオプション紹介

  • –dry-run(変更なしで仮実行する)
  • –diff(変更がある箇所を出力する)
  • –rules=[ルール名](適用するルールを指定できる。--rules=-full_opening_tag,-indentation_type
  • –allow-risky=[ yes or no](振る舞いに影響のあるルールを適用するかどうかを確認します。デフォルトはnoです。
  • –stop-on-violation(修正対象のファイルが1つでもあれば、1ファイルだけ実行する)

ルールの一覧はhttps://github.com/FriendsOfPHP/PHP-CS-FixerのREADMEを見てほしい。(かなり多くのルールが存在する)

設定ファイルについて

コマンドラインのオプションで設定する代わりに、設定ファイル(.php_cs.dist)にルールを記述することもできる。.php_cs.distはプロジェクトルートに配置することで、プロジェクト毎に設定可能となる。設定方法についてもREADMEを参照してほしい。

といったように–configオプションにファイルを指定して実行する

.php_csを設定ファイルとすることも可能で、こちらは個人用の設定ファイルという位置づけ。–configオプションとともに、.php_csのパスを設定することで、プロジェクトとは別の設定ファイルを実行できる。.php_csはgitの管理対象からは外すのが良い。