[php]PHPコード仕様

2777 ワード

1.命名規範
 
Θ  クラスファイルは.class.phpを接尾辞とし、アルパカ法を使用して名前を付け、Pay.class.phpなどの頭文字を大文字にします.
Θ  クラス名とディレクトリ_ファイル名が一致しています.例:クラス名Zend_AutoloaderのディレクトリはZend/Autoloader.class.phpです.
Θ  関数の名前には、小文字と下線が使用されます.例:get_client_ip;
Θ  メソッドのネーミングには、アルパカ法、頭文字小文字、またはlistComment()などの下線「」を使用します.getResource()は、通常、下線の先頭のメソッドがプライベートメソッドに属します.
Θ  属性の命名には、アルパカ法、頭文字小文字、または$username、$_などの下線「」を使用します.Instanceは、通常、下線の先頭の属性がプライベート属性に属します.
Θ  定数は、「HOME_URL」などの大文字と下線「」で命名されます.
2.常用名詞
1>list名詞(単数)listAppleのように、見るとアップルのリストを読み取ることがわかります.getApplesやlistApplesやreadApplesと書く必要はありません.getはgetApple.listApplesがsを加えないなど、単一のデータを読み取るために一般的に使われていることを規定しています.アップルのリストを取ることも知っています(変数の命名をできるだけ短縮することを保証します).
 2>get名詞(単数);
 3>名詞Totalは、あるものの総数を表す.例えばexpenseTotal;
 4>found:値が見つかったかどうかを示します.
 5>successまたはok:操作が成功したかどうか.
 6>done:ある工事が完成したかどうか;
 7>error:エラーが発生したかどうか;
 8>result:返された結果
3.コード再構築
 1>関数またはメソッド内のコードは、できるだけ1つの画面内に制御します.
 2>  クラスで使用されていないメソッドをランダムに削除します.
 3>  他人のクラスのメソッドを修正し、署名します.
 4>  各モジュールにreadmeファイル(複雑なビジネスの説明またはコードの説明)を書きます.
 5>  できるだけ各クラスに自分のことをさせ、関数ごとに一つのことをさせます.
4.共通コード
 1> 
操作を簡略化 
明らかにコードはもっと整然としていて、もっと簡単に見えます!
//   :
<?php
$a=1;
$b = 0;
if(isset($a)){
    $b=1;
    print($b."
"); } if($b!=0){ print($b."
"); } // : <?php $a=1; $b = 0; isset($a) && ($b=1) && print($b."
"); $b == 0 || print($b."
");

 
2> 
「===」を判断すると、「===」を「=」と書く可能性があります.このようなバグでは、図をデバッグするのは難しいです.だから、定数を前に置くと、コンパイラが判断します. 
明らかに、定数を前に置くと、コンパイラは間違いを判断することができます.
//  :
<?php
$a = 1;
if($a = 1){
    echo '$a == 1';
}

//  :
<?php
$a = 1;
if(1 = $a){
    echo '$a == 1';
}

 
3> 
ルックアップテーブルほう 
明らかにコードはもっと洗練されていて、もっとはっきりしていて、もっと分かりやすくて、スピードももっと速いです!
//  :
<?php
/*   :4,5,7,8       1,    1,3,6    2*/
$error = 4;
$state = 0;
if($error == 4 || $error == 5 || $error == 7 || $error == 8){ 
    $state = 1;
}
 
if($error == 1 || $error == 3 || $error == 6){ 
    $state = 2;
}
echo "$state 
"; // : <?php /* :4,5,7,8 1, 1,3,6 2*/ $error = 4; $state = 0; $arr = array(4 => 1, 5 => 1, 7 => 1, 8 => 1, 1 => 2, 3 => 2, 6 => 2); isset($arr[$error]) && ($state = $arr[$error]); echo "$state
";