私は常に PHP 関数のスタイルで PHP を記述してきました。変数、関数、クラスはすべて小文字で、単語はアンダースコアで区切られます。個人的には、キャメル ケース コードの仕様に常に反対しています。大文字と小文字の違いは、その間にコードを書くのが非常に面倒ですし、PHP 自体の関数はすべて小文字なので、この形式を使用しないのはなぜでしょうか。
良いコードを書く習慣 + 良いコメントの習慣 + PhpDocumentor = プログラム マニュアル
統一された IDE 開発環境、詳細なタスクのコーディング プロセス、および完全なコード テスト (SimpleTest など) と組み合わせる場合、チームはきちんとしたコードを書く習慣を身に付ける必要があります。 , そうすれば、チーム全体の開発効率が大幅に向上します。
IDE が Eclipse の場合は、SimpleTest を使用して http://www.guogoul.com/2008/05/19/simpletest_1/
を参照してください。注: この仕様は、SINA から借用したものです。 EasyChen ネットワークアプリケーション開発部の「C++開発仕様書」とインタラクティブテクノロジー部の「PHP4開発仕様書」、phpDocument仕様書がまとめられた開発仕様書は非常に優れており、PHP開発に適していると思います。参考までに、適切なプログラミング スタイルを開発することは非常に必要です。 (再掲)
第1章 命名規則 1.1 変数 1.1.1 グローバル変数
グローバル変数は、$g_data_list のように、$g_ で始まります。
1.1.2 一般変数
一般変数は小文字で名前が付けられ、単語はアンダースコアで区切られます。
変数名には名詞、または形容詞+名詞を使用する必要があります。 $value、$new_value など。
1.1.3 一時変数
ループ内で頻繁に使用される $i、$j などの一時変数を他の目的で使用しないでください。
1.2 関数
関数の名前は小文字で付けられ、単語はアンダースコアで区切られます。
get_user_img などの関数に名前を付けるときは、動詞 + 名詞を使用することをお勧めします。
一連の関数を完成させる関数をファイルに入れます。関数を保存するファイルの名前は function_name.func.php です。
1.3 クラス
クラスでは、最初の単語を含む単語の区切りに英語の大文字化が使用され、PageManager のように、すべての単語の最初の文字が大文字になります。
クラス内では、メソッドが属性定義の前に配置され、パブリック メソッドは特別なメソッドの前に配置します。
通常、クラスは 1 つのファイルに対応します。
いくつかのクラスが密接に関連している場合は、1 つのファイルに格納できます。
クラスを格納するファイルの名前は ClassName.class.php です。
1.4 メソッド
このメソッドは、最初の単語を除き、他の単語の最初の文字を大文字にします。
where2go(); などの珍しい略語は使用しないでください。一般的に使用されるもの 短縮する場合は、getHtml() のように最初の文字のみを大文字にします。
2.1 セマンティック分離
各関数とメソッドの間には空行間隔を使用する必要があります。
同じ関数内の密接に関連するステートメントは、他の場合に改行する必要はありません。
2.2.1 論理演算子の前後にはスペースが必要です
正しい $a == $b;
エラー $a==$b;
$a ==$b;
備考-
エラー $a ++; $a ?;
備考: 1 を加算する演算子と 1 を減算する演算子ではスペースを追加できません。
正しい $g_pro, $g_user, g_show;
get_db_info($host, $user, $passwd);
エラー $g_pro,$g_user,$g_show;
get_db_info( $host,$user,$passwd);
備考-
例: If、for、while、switch…..
正しい $my_name = 'file_' . $var1;
エラー $my_name = ”file_'.$var1;
$my_name = ”file_$var1″;
備考-
2.4 括弧の規則
($i = 0; $i strlen($my_name);
($i = 0; $i strlen ($my_name) は間違っています;
備考-
2.5 中括弧の規則
正しい
{
$b = $a;
}
誤ったif ($a){
}
備考-
2.6 配列定義規則
配列を定義して使用する場合は、キー値の前後に一重引用符を配置する必要があります。
PHP コード:
ダウンロード: php_array.php //正しい
array('name' => 'd5s.cn',
'gender' => 'php'
);
//間違った
array (
name => 'd5s.cn',
gender => 'php'
);
?>
2.7 SQL ルール
PHP に埋め込まれた SQL ステートメントのキーワードはすべて大文字です。フィールド名のスペースによるエラーを防ぐために、バックティック (`) で囲む必要があります。
データ値は両側を一重引用符で囲み、SQL インジェクションを防ぐためにデータ値内の単一引用符をエスケープする必要があります。正しい $sql = ”SELECT `user`.`name` FROM `user` WHERE `id` = '$id' LIMIT 1″;
エラー $sql = ”select name.user from name where id = $id ”;
備考-
第 3 章 コメント規則
3.1 一般規則
コメントは、ロジックをうまく説明できない場合にコードを補足するためにのみ使用してください。 /Write/ を記述するときは、コメントをプログラムの一部として考慮してください。コードを維持しながらコメントを維持します。
コメントは API レベルのドキュメントの生成を容易にするために PHPDocumentor の仕様を完全に採用します。
PHPDocumentor マニュアルを参照してください。各部位のアノテーション例を以下に示します。
アノテーション名著作権情報
アノテーションのデモ //
// +??????????????????-+
// | phpDocumentor |
/ / + ??????????????????-+
// | Copyright (c) 2000-2003 Joshua Aichorn |
// | 電子メール jeichorn@phpdoc.org |
// | Web http://www.phpdoc.org |
// +??????????????????-+
// このソース ファイルは PHP ライセンスの対象です |
// +? ????????????????-+
//
備考 PHPDocumentor のページレベルの DocBlock
との競合を避けるために、// を使用して著作権情報をマークします。コメント例
コメント名 ファイルヘッダー コメント
コメントデモ
ダウンロード: php_doc.php * インラインタグのすべての抽象表現はこのファイルにあります
* @subpackage InlineTags
* @since バージョン 1.2 以降の別ファイル
* @ version $Id $
*/
?>
備考
2 CVS の使用を容易にするために @version に $ID を追加して管理しますファイル
3.2.3 クラスのコメント 例
アノテーションのデモンストレーション
ダウンロード: php_class.php /**
* @see parserStringWithInlineTags
* @package phpDocumentor
* @subpackage InlineTags
* @author Greg Beaver
* @since 1.0rc1
* @バージョン $Revision: 1.21.2.6 $
* @tutorial inlinetags.pkg
*/
?>
備考-
3.2.4 クラス属性のアノテーションの例
アノテーション名 クラス属性のアノテーション アノテーションのデモ
ダウンロード: php.php /**var $type = 'inlinetag';
*
* 型は、面倒な作業をスキップするために多くの関数で使用されます
*
*
* if get_class($blah) == 'parserBlah'
*
* always "インラインタグ"
* @var string
*/
?>
備考-
3.2.5 関数/クラスメソッドのアノテーションの例
アノテーション名 関数/クラスメソッドのアノテーション注釈のデモ
ダウンロード: php .php /**function getString() '';
* DocBlock の短い説明を計算します
* @see parserStringWithInlineTags::getString()
* @see parserStringWithInlineTags::trimmedStrlen()
*/
{
}
?>