PHP Web サイトのコード記述仕様
a) すべての文字に小文字を使用します
b) 最初の文字は変数値の型に従って指定されます
i.整数 i
ii. 浮動小数点数 f
iii. 文字列
iv. ブール値 b
v. 配列
vi.
のオブジェクトvii. リソース
viii. 混合型 m
c) 各単語の区切り文字として「_」を使用します
例:
$i_age_max = 10;
$f_price = 22.5;
$s_name = 'ハリー';
$b_flag = true;
$a_price = array();
$o_object = 新しいクラス();
$r_file = fopen();
$m_var = array_combine($a_name, $a_flag);
a) 単語の区切り文字として大文字を使用し、その他の文字には小文字を使用します (キャメルケース形式)。
b) 名前の最初の文字を大文字にします
c) アンダースコア ('_') を使用しないでください
d) インターフェイス インターフェイスは、大文字の I を使用し、インターフェイス
で終わるのが最適です。例:
クラス NameOneTwo
クラス名
インターフェース IExampleInterface ()
a) 単語の区切り文字として大文字を使用し、他のすべての文字には小文字を使用します
b) 名前の最初の文字は大文字にする必要があり、「プライベート」または「保護」として宣言されている場合は、接頭辞として「_」を使用します
c) アンダースコア ('_') を使用しないでください
d) (クラスの名前付けと一致するルール)
e) オブジェクト アクセサーには常に「get」または「set」という接頭辞が付けられます。シングルトンやファクトリーなどのデザイン パターンを使用する場合は、メソッドの名前にパターンの名前を含める必要があります。これにより、デザイン パターンが認識しやすくなります。彼らの名前。
例:
クラス NameOneTwo{
パブリック関数 DoIt() {};
保護関数 _HandleError() {};
プライベート関数 _SayHello() {};
}
a) 属性名のプレフィックスは、属性値のタイプによって指定する必要があります (詳細については、変数の命名規則を参照してください)
b) 接頭辞の後には、クラスの命名規則と同じルールに従います
c) プライベート属性には接頭辞「_」が付きます
例:
クラス NameOneTwo {
パブリック関数 VarAbc() {};
パブリック関数 ErrorNumber() {};
パブリック $iAge;
プライベート $_iAge;
}
a) 参照クラス属性の名前付け
例:
クラス NameOneTwo {
パブリック関数 VarAbc($sMsg) {};
}
a) グローバル変数には接頭辞「g」を付ける必要があります
b) 残りについては、変数の命名規則を参照してください
例:
グローバル $gi_Age;
グローバル $ga_Price
a) グローバル定数では、「_」を使用して各単語を区切ります
b) すべて大文字を使用します
例:
define('E_ERROR_MISSING_PARA', 501);
a) すべての文字は小文字であり、各単語を区切るには「_」を使用します
例:
関数 some_bloody_function(){
}
a) 中括弧はキーワードの下の同じ列または同じ行に配置します。同じ行に配置することをお勧めします。
例:
関数 some_bloody_function() {
}
if (true) {
// コード
}
a) タブインデントを使用します
例:
関数 some_bloody_function() {
if (true) {
//コード
}
}
a) 括弧とキーワードを近づけず、スペースで区切ります
b) 括弧と関数名は近くに配置する必要があります
c) 必要な場合を除き、Return ステートメントで括弧を使用しないでください
例:
if (条件) {
}
strcmp($sHello, $sEvening);
1 を返す;
レイアウト
if (条件1) { //コメント
}
else if (条件 2) { //コメント
}
else { //コメント
}
else if ステートメントを使用する場合、通常は、処理されない他の状況を処理するために else ブロックを用意するのが最善です。可能であれば、else にアクションがない場合でも、else にレコード情報のコメントを入れてください。
条件付き書式
定数は常に等号/不等号の左側に配置します。例:
if ( 6 == $errorNum ) …
その理由の 1 つは、数式で等号を省略すると、文法チェッカーがエラーを報告するためです。 2 番目の理由は、式の最後に値を見つけるのではなく、すぐに値を見つけられることです。この形式に慣れるまで少し時間がかかりますが、非常にうまく機能します。
a) デフォルトは常に存在する必要があり、これに達することはできませんが、デフォルトに達すると、エラーがトリガーされます。
b) 変数を作成している場合は、すべてのコードをブロックに入れます。
例:
スイッチ ($numPeople) {
ケース 1:
休憩;
ケース 2:
休憩;
デフォルト:
休憩;
}
a) 条件をかっこで囲んで、コードの残りの部分と区切ります。
b) 可能であれば、アクションには単純な関数を使用できます。
c) アクション、「?」、「:」は、明らかに同じ行に配置できない場合は、別の行に配置します。
たとえば
(条件) funct1() : func2();
(条件)
?長い声明
: 別の長いステートメント;
a) コードブロックを整列させる必要があることを宣言します。
たとえば
$iDate = 0;
$irDate = NULL;
$sName = ‘’;
$mName = NULL;
ゼロ以外の値をテストするためにデフォルト値を使用しないでください。つまり、次の値を使用します。
if (FAIL != f())
次の方法よりも優れています:
if (f())
FAIL にも値 0 が含まれる可能性があり、PHP はこれを false と見なします。失敗時の戻り値として 0 ではなく -1 を使用することにした場合は、明示的なテストが役立ちます。比較値が変わらない場合でも、明示的な比較を使用する必要があります。
例: if (!($bufsize % strlen($str))) は、数値型 (ブール型ではない) を表す場合: if (($bufsize % strlen($str)) == 0) のように記述する必要があります。テストの。よくある問題は、strcmp を使用して文字方程式をテストすると、結果がデフォルト値と等しくなることがないことです。
非ゼロ テストはデフォルト値に基づいているため、他の関数または式には次の制限が適用されます。
失敗を示す 0 のみを返すことができ、他の値を返すことはできません。
戻り値が true であることが完全に明らかであるように名前が付けられており、Checkvalid() の代わりに関数 IsValid() を呼び出します。
a) //単一行コメント
b) 2 番目のタイプ
/*
* 複数行のコメント…
*
*/
c) 3 番目のタイプ
/**
* 複数行のドキュメント コメント…
*
*/
d) ドキュメントのコメントに関する注意
/**
※これは機能に関するコメントです…
*
*/
関数 bac(){}
/*
* /**始まり…
*
*/
で始まらないため、これはドキュメント コメントではありません
関数 bac(){}
/**
※これはドキュメントコメントですが、関数の前に置かれていないため、関数とは関係ありません...
*
*/
関数 bac(){}
e) ドキュメント
/**
*ファイルの説明
* @著者著者
* @license ライセンス
* @バージョン 1.0
* @リンク
* @final
*/
わかりやすくするために、コードを作成した後、ZendStudio を使用してコードを再フォーマットすることをお勧めします