いまどきのPHPコーディング

By | 2014年1月27日

こんにちは、括弧つけるのが格好いいJです。

この場合、特にまずいことは何もない。

が、後で誰かがもう1行追加するかもしれない。

こうなると、、

ということで、
今回は、いまどきのPHPコーディング規約などをまとめてみました。

 

PHPコーディング規約の種類

PSR

PSRとは、PHP-FIGによってまとめられている規約
PHP Framework Interop Group
には、PHPの3大フレームワークと呼ばれているCakePHP、Symfony、Zend Frameworkや
幅広い分野の関係者が参加しています。入ってないのは、CodeIgniterくらいですかね

PEAR

Zend Framework

CakePHP

Symfony2

 

ざっくりみると、

  • .php付けてファイルパスとします
  • クラス名、メソッドはキャメル記法で書きます。数字の利用は非推奨
  • PHPファイルの改行はLFで
  • 制御構造(if/else/elseif)中括弧をつけます
  • 制御構文のキーワード(if、else、for、while、…)と開き丸括弧との間には、空白を1つ開けます
  • 演算子(==、&&、…)の前後には空白を1つ開けます
  • else if はだめ、elseifを使おう
  • PHPコードのみの場合は終了タグは不要
  • インデントには、空白4つを使い、タブを使ってはなりません
  • 配列、カンマの後はスペースを入れます

 

などなどが、推奨のようです。

 

PHPでコーディング規約チェックツール

PHP-CS-Fixer

 

インストール方法


wget http://cs.sensiolabs.org/get/php-cs-fixer.phar -O /usr/local/bin/php-cs-fixer

実行方法

php /usr/local/bin/php-cs-fixer fix /path/to/project --level=psr2

  • インデントが4spaceに
  • クラス宣言の開始ブレースが次行に
  • PHP開始タグが <? から <?php に
  • return文の前行を一行開ける

自動で修正してくれるので楽です。

 

まとめ

フレームワークを利用の開発の場合は、
必ず各フレームワークの規約に従ってください、動かないので。

とくに利用しているフレームワークの規約がないなら、
いまどきのPHPコーディングとしては、 PSR-2 に従っておけばよさそうです。
同意しかねるところもあるかもしれませんが、、

これらの規約を知ることで、自分の書き方を見直したり、他の人を説得するのに使えると思います。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です