PHP Code SnifferでCakePHPのコーディング規約をチェックする方法

cakephp

私の愛しいアップルパイへ

CakePHPでは以下の公式ガイドで定められているとおり、コーディング規約があります。

CakePHPでコーディング規約をチェックするにはPHP Code Snifferを使うのが便利です。CakePHPのコーディング規約に外れたコードを自動でチェックしてくれます。

今日はPHP Code Snifferを使ってCakePHPのコーディング規約をチェックする方法をご説明します。

PHP Code SnifferでCakePHPのコーディング規約をチェックする方法

▼まずはcomposer.jsonに以下を追記します。

"suggest": {
    "cakephp/cakephp-codesniffer": "Allows to check the code against the coding standards used in CakePHP."
},

▼以下のコマンドを実行してcodesnifferをインストールします。

sudo composer update

▼CakePHPのインストールフォルダに移動してから以下のコマンドを実行し、CakePHPのコーディング規約をセットします。

sudo vendor/bin/phpcs --config-set installed_paths vendor/cakephp/cakephp-codesniffer

▼以下のコマンドを実行すればコーディング規約のチェックをはじめてくれます。

vendor/bin/phpcs --standard=CakePHP src/

▼コーディング規約に引っかかる場所があれば、以下のように示してくれます。

FILE: ...src/Controller/XXXXController.php

----------------------------------------------------------------------
FOUND 2 ERRORS AFFECTING 1 LINE
----------------------------------------------------------------------
11 | ERROR | [ ] Expected 1 space after class declaration, found 0
11 | ERROR | [x] Opening brace of a class must be on the line after
   |       |     the definition
----------------------------------------------------------------------
PHPCBF CAN FIX THE 1 MARKED SNIFF VIOLATIONS AUTOMATICALLY
----------------------------------------------------------------------

Time: 1.52 secs; Memory: 9.25Mb

gulpなどに仕込んで自動実行できるようにしておくとさらにいいでしょう。

貴下の従順なる下僕 松崎より

著者画像

システム系の専門学校を卒業後、システム屋として6年半の会社員生活を経て独立。ブログ「jMatsuzaki」を通して、小学生のころからの夢であった音楽家へ至るまでの全プロセスを公開することで、のっぴきならない現実を乗り越えて、諦めきれない夢に向かう生き方を伝えている。