【PHP】PHP_CodeSniffier を使用してコードをPSR(コーディング規約)に基づいて整形する
PHP のパッケージ、 PHP_CodeSniffer
を使用してPSR(PHPコーディング規約)に基づいて整形させる方法。
インストール方法
基本的に開発でしか使わないはずなので --dev
を付けてインストール。
composer require --dev "squizlabs/php_codesniffer"
インストールが完了したら以下でヘルプが出てくることを確認。
./vendor/bin/phpcs -h
使い方
使用可能なコーディング規約を確認。
./vendor/bin/phpcs -i
使用可能なPSRが出てきます。
The installed coding standards are MySource, PEAR, PSR1, PSR12, PSR2, Squiz and Zend
設定
以下のような作りが基本的な設定ファイルになります。
|
|
以下のように特定のルールの中で除外や追加することも可能です。
|
|
設定をチェック
./vendor/bin/phpcs -e
設定の各種対応するものはこちらから見ることが出来ます。
PHP CodeSnifferにおけるPSR1,2の検知箇所と対応するSniffer - Qiita
実行
- 基本的なソースコードチェック
phpcs --report=[summary|source] --standard=[ルール名|設定ファイル] [ファイル|ディレクトリ]
各種オプションはなくても大丈夫です。phpcs.xml
が作られていれば基本的に読み込まれています。
- ファイル別に出力
./vendor/bin/phpcs --report=summary .
- ルール別に出力
./vendor/bin/phpcs --report=source .
ソースコードの自動整形
- 基本的なソースコードの自動整形
./vendor/bin/phpcbf --standard=[ルール名|設定ファイル] [ファイル|ディレクトリ]
- 実行
./vendor/bin/phpcbf .