hasen's tech life

Twitter: @hasen

PHPのフォーマッタPHP Coding Standards Fixerをインストールして実行

PHPのフォーマッタ,PHP Coding Standards Fixerをインストールしてみました.
インデント修正,リラックス効果が有りますが,人間がする仕事ではない気もするので,よかったら.

# インストール
$ cd /usr/local/src
$ sudo wget http://get.sensiolabs.org/php-cs-fixer.phar -O php-cs-fixer
$ sudo chmod 755 /usr/local/src/php-cs-fixer
$ ln -s /usr/local/src/php-cs-fixer /usr/local/bin/php-cs-fixer
$ php-cs-fixer self-update
# フォーマット
$ php-cs-fixer fix /PATH/TO/DIR --level=psr2
$ php-cs-fixer fix /PATH/TO/DIR --fixers=hpdoc_indent,phpdoc_params,short_array_syntax,multiline_array_trailing_comma,operators_spaces

変更例としては
・制御構文の形をPSR2に
・大文字,小文字の統一(Class -> class, NULL -> null)
・'='(代入演算子)を縦に整列
・array('hoge')を['hoge']に
・public function hoge($page='fuga')をpublic function hoge($page = 'fuga')に

--level指定なしが,強力ですが,以下の2点があるので,使ってません.
--level=psr2 + --fixers=...で必要なものを別途やってます.
1. '.'による文字列連結時に, '.'の前後の空白が削除される.
2. 配列の末尾の','が削除される.(['hoge', 'page',] => ['hoge', 'page'])

http://cs.sensiolabs.org/