注: これは PHPCMS 開発ドキュメントに記載されているコーディング仕様です。PHPCMS 開発仕様と呼ばれていますが、PHP プログラミングはすべてこうあるべきだと思います。 PHP をたくさん書いてきたので、この標準と比較して多くのコーディングが不足していると感じました。今後修正する必要があります。
Phpcms コーディング標準
1. 概要… 2
2. 適用範囲… 2
3. 標準化の重要性と利点… 3
4. コードのマークアップ… 3
4.2. … 3
4.3. 記述ルール… 4
4.3.1. インデント… 4
4.3.2. 中括弧、if およびスイッチ 4
4.3.3. 単語と関数… 5
4.3. .4. 関数の定義… 6
4.3.5. 引用符… 6
4.3.6. 複数言語の問題… 8
4.4.1. 変数、オブジェクト、関数名… 8 2. 定数… 8
4.5. 変数の初期化とロジックチェック… 9
4.7. 互換性… 9
4.8. その他の詳細… 10
4.9.1. 10
4.9.2. エラー報告レベル… 11
5. フィールド… 11
5.1.2. フィールドの構造… 11
5.2. 12
5.3. パフォーマンスと効率… 13
5.3.1. 固定長テーブルと可変長テーブル… 13
5.3.3. 構造の最適化とインデックス作成の最適化… 14 . クエリの最適化… 14
5.3.5. 互換性の問題… 16
6.1. コードのマークアップ… 16
6.2.2. 変数… 16
6.2.3. 言語要素… 17
6.2.4. インデント… 17
7.1. ファイルの名前付け… 17
7.3. 空のディレクトリのインデックス… 18
1. はじめに
この仕様は、開発者が長期間にわたって蓄積した成熟した経験を統合および洗練したプログラミング原則で構成されており、優れた一貫したプログラミング スタイルの形成に役立つことを目的としています。半分の労力で 2 倍の結果を達成するために、このドキュメントは必要に応じて随時更新されます。
著作権: Shaanxi Jiushi Lulu Network Technology Co., Ltd.、全著作権所有
最終更新日: 2006 年 11 月 20 日
2. 適用範囲
特別な説明がない限り、以下の規則および要件は phpcms に完全に適用されます。それらのほとんどは、社内の他の PHP プロジェクトにも当てはまります。
3. 標準化の重要性と利点
ソフトウェア プロジェクトが公的で一貫した標準に準拠しようとすると、プロジェクトに参加する開発者がプロジェクト内のコードを理解し、プログラムのステータスを明確にすることが容易になります。これにより、新しい参加者がすぐに環境に適応できるようになり、一部の参加者が時間を節約する必要から自分のスタイルを確立したり、生涯にわたる習慣を身につけたりして、他の参加者が読書に過度の時間とエネルギーを浪費することを防ぎます。また、一貫した環境では、コーディング エラーの可能性も減らすことができます。欠点は、人によって標準が異なるため、コーディング スタイルに適応して変更するのに時間がかかり、一時的に作業効率が低下することです。プロジェクトの長期的な健全な発展と、後期におけるチームの作業効率の向上を考慮すると、一時的な作業効率の低下は考慮する価値があり、必ず通過しなければならないプロセスでもあります。標準はプロジェクトの成功の鍵ではありませんが、チームのコラボレーションをより効率的にし、確立されたタスクをよりスムーズに完了するのに役立ちます。
1. プログラマはあらゆるコードを理解し、プログラムの状態を理解できます
2. 初心者がすぐに環境に適応できるようになります
3. PHP を初めて使用する人が独自のスタイルを作成し、それを一生開発することを防ぎます。時間を節約する必要があります 習慣
4. PHP を初めて使用する人が同じ間違いを繰り返さないようにする
5. 一貫した環境では、プログラマーには一貫した敵がいます
4.標準 原則
4.1. コード マークアップ
PHP プログラムは、PHP コードを定義するために または を使用できます。この形式は、HTML ページに純粋な変数を埋め込むときに使用できます。
近年、PHP 開発チームはコードの正規化と標準化を提唱しています。PHP の将来のバージョンでは、この短縮形式が廃止されるか、廃止される可能性があります。そのため、プログラムの互換性を高めるために、
4.2 を統一します。コメント
リリース前コメント 機能を忘れがちなコードに短い紹介コンテンツを追加するものです。 C スタイルのコメント「/* */」と標準の C++ コメント「//」を使用してください。
プログラム開発中に一時的なコードやデバッグコードを残すことは避けられません。将来忘れないように、そのようなコードはコメント化する必要があります。すべての一時コード、デバッグ コード、および実験コードには、統一されたコメント マーク「//debug」とその後に完全なコメント情報を追加する必要があります。これにより、プログラムのリリース前と最終的なデバッグの前に、プログラムに疑わしい問題があるかどうかをバッチ チェックすることが容易になります。コード。例:
$num = 1;
$flag = TRUE; //debug ここで $flag に値を割り当てる必要があるかどうかは不明です
if(empty($flag)) {
//Statements
}
4.3記述ルール
4.3 .1. インデント
各インデントの単位は 1 タブ (空白文字幅 8 文字) であり、プロジェクトに参加する各開発者がエディター (UltraEdit、EditPlus、Zend Studio など) で設定する必要があります。 ) コードの記述忘れによる書式の乱れを防ぐため。
このインデント仕様は、PHP および JavaScript の関数、クラス、論理構造、ループなどに適用されます。
4.3.2. 中括弧 {}、if および switch
最初の括弧は同じ列のキーワードに対応し、最後の括弧は同じ列のキーワードに対応します
if 構造では、if と elseif は 2 つの丸括弧に対応します。前後、左右にスペース 1 つ、中括弧はすべて別の行に配置されます。さらに、if の後にステートメントが 1 行しかない場合でも、構造を明確にするために中括弧を追加する必要があります。通常、switch 構造では、case ブロックが処理されると、後続の case ブロックの処理はスキップされます。そのため、ほとんどの場合、ブレークを追加する必要があります。ブレークの位置は、プログラムのロジックによって異なります。ただし、同じスイッチ本体内では、ブレークの位置形式は一貫している必要があります。
以下は上記の仕様に準拠した例です:
If ($condition)
{
switch ($var)
{
case 1: echo 'var is 1'
case 2: echo 'var is 2; '; ブレーク ;
デフォルト: 'var は 1 か 2 のどちらでもない'; Break;
デフォルト:
$result = 'unknown';
break;
}
}
4.3.3. 各演算子は、関連する値または式から分離する必要があります。両側の演算 スペースがあります。唯一の例外は、文字連結演算子の両側にスペースがないことです。
左括弧「(」は関数キーワードと密接に関連している必要があります。それ以外の場合は、スペースを使用する必要があります。 "(" を前のコンテンツから区切ります。
右 ")" または "." が続く括弧を除き、他のすべての括弧はスペースで区切られます。
文字列内で特に必要でない限り、通常の状況では 2 つの連続した括弧が必要です。プログラムや HTML にはスペースは使用できません。
いかなる状況でも、PHP プログラムには TAB またはスペースを含む空行を表示してはなりません。つまり、そのような空行には TAB やスペースを含めてはなりません。同時に、プログラム行の末尾に余分な TAB やスペースを含めることはできません。ほとんどのエディタには、行末のスペースを自動的に削除する機能があります。習慣がうまく育っていない場合は、それを一時的に使用して、大きなプログラム本体ごとに、上に空白行と 2 つのプログラム ブロックを追加する必要があります。以下 空白行は 1 行のみ使用し、複数行は禁止します。
プログラムブロックをできるだけ合理的に分割します。分割が大きすぎたり小さすぎたりすると、他の人によるコードの読み取りや理解に影響を与えます。一般的には、より大きな機能定義、論理構造、機能構造に分けることができます。 15 行未満のプログラム ブロックでは、上下の空白行を追加する必要はありません。
説明または表示部分で、内容に中国語、数字、英語が混在している場合は、数字または英語の前後にスペースを追加する必要があります。言葉。
上記の原則に基づいて、次の例は正しい記述形式を示しています。
$result = (($a + 1) * 3 / 2 + $num)).'Test'; func1($var); : func2( $var);
$condition ? $long_statement
: $another_long_statement;
if ($flag)
{
//15 行以上
}
Showmessage('restore.php ツールを使用してくださいデータを復元します。' );
現在のページ 1/3 123次のページ
上記は、http://67.220.92.14/forum/inde にある非常に優れた PHP コーディング仕様の 1/3 ページを紹介しています。http://67.220.92.14/forum/inde の内容も含まれています。興味のある友達は PHP チュートリアルを手伝ってください。