PHP プログラミング スタイルの仕様 Sharing_php の基本

WBOY
リリース: 2016-05-16 08:59:54
オリジナル
2950 人が閲覧しました

注: この仕様は、SINA ネットワーク アプリケーション開発部門の「C 開発仕様」、インタラクティブ テクノロジー部門の「PHP4 開発仕様」、および phpDocument 仕様に基づいて EasyChen によって編集されています。これは非常に優れており、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 つのファイルに保存できます。

クラスを保存するファイルの名前は ClassName.class.php です。

1.4 方法

このメソッドでは、英語の大文字と小文字を使用して単語を区切ります。最初の単語を除き、他の単語の最初の文字は大文字になります (getCurrentPage(); など)。

where2go(); などの一般的でない略語は使用しないでください。

一般的に使用される略語を使用する場合は、getHtml() のように最初の文字のみを大文字にします。

第 2 章 フォーマット規則

2.1 意味上の分離

各関数とメソッドの間には空行を使用する必要があります。

同じ関数内の密接に関連するステートメント間には改行は必要ありませんが、それ以外の場合は改行が必要です。

2.2 スペースのルール

2.2.1 論理演算子の前後にスペースを追加する必要があります

正解

コードをコピー コードは次のとおりです:
$a == $b;

エラー

コードをコピー コードは次のとおりです。

$a==$b;$ a ==$b;

正解

コードをコピー コードは次のとおりです:
$a ; $a--;

エラー

コードをコピー コードは次のとおりです:
$a ; $a --;

備考: 加算演算子と減算演算子ではスペースを追加できません。

2.2.2 複数のパラメータを区切る場合はスペースを追加する必要があります
正解

コードをコピー コードは次のとおりです。

$g_pro 、 $g_user 、 g_show;
get_db_info($host, $user, $passwd);

エラー

コードをコピー コードは次のとおりです:

$g_pro,$g_user,$g_show ;
get_db_info($host,$user,$passwd);

2.2.3 構文キーワードの後に​​スペースを追加する必要があります

例: If、for、while、switch…..
正解

コードをコピーします コードは次のとおりです:
for ($i = 0; $i

エラー

コードをコピーします コードは次のとおりです:
for($i = 0; $i

2.3 文字列と変数の接続ルール
文字列と変数を「.」記号で接続する場合は、「.」の前後にスペースを追加する必要があります。「.」記号を使用する場合は、「{}」を使用する必要があります。変数の前後に追加してください。正解

コードをコピー コードは次のとおりです:

$my_name = 'file_' . $ var1; $my_name = "file_{$var1}";

エラー

コードをコピー コードは次のとおりです:

$my_name = "file_'.$ var1; $my_name = "file_$var1";

2.4 括弧の規則
関数名の後にスペースを追加する必要はありません。また、構文キーワードの後に​​スペースを追加する必要があります。
正解

コードをコピーします コードは次のとおりです:
for ($i = 0; $i strlen($my_name);

エラー

コードをコピーします コードは次のとおりです:
for($i = 0; $i strlen ($my_name);

2.5 中括弧の規則
中括弧は上部と下部に対応している必要があります。

正解

コードをコピー コードは次のとおりです。

if ($a)
{
$b = $a;
}

エラー

コードをコピー コードは次のとおりです。

if ($a){
$b = $a;
}

2.6 配列定義ルール

配列を定義して使用する場合は、キー値の前後に一重引用符を追加する必要があります。
PHP コード:
正しい

コードをコピー コードは次のとおりです。

array( 'name' => ' ', ' 性別' => '' );
$user_info['name'];

エラー

コードをコピー コードは次のとおりです。

array( name => '',性別 => '' );
$user_info[name];

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 一般ルール
不要なコメントは書かない; コードでロジックをうまく説明できない場合にのみ、コメントを使用して補完する;
コメントはコメントの一部であると考えるプログラムでは、コードの作成/保守中にコメントの作成/保守を行います。
コメントは、API レベルのドキュメントの生成を容易にするために、PHPDocumentor の仕様を完全に採用しています。

3.2 詳細ルール
PHPDocumentorのマニュアルを参照してください。各部位のアノテーション例を以下に示します。

3.2.1 著作権情報
注釈名 著作権情報
注釈の例:

コードをコピー コードは次のとおりです:

//
// - --- --------------------------------------
// | phpDocumentor |
// -------------------------------------- ----- --------
// | 著作権 (c) 2000-2003 Joshua Aichorn |
// | 電子メール jeichorn@phpdoc.org |
// | ウェブ http ://www. phpdoc.org |
// -------------------------------------- - ---------------
// | このソース ファイルには PHP ライセンスが適用されます |
// -------------- - ------------------------------------
//
ぱ>

注: PHPDocumentor のページレベルの DocBlock との競合を避けるために、著作権情報をマークするには // を使用します。

3.2.2 ファイル ヘッダー コメントの例

コメント名 ファイル ヘッダー コメント
コメントのデモ:

PHP コード:

コードをコピー コードは次のとおりです:

/**
* すべてインライン タグの抽象表現はこのファイルにあります
* @package phpDocumentor
* @subpackage InlineTags
* @since バージョン 1.2 以降の別ファイル
* @version $Id $
*/
div>

備考
1) ファイル ヘッダーのコメントは、それが属するパッケージとサブパッケージを示す必要があります。
2) CVS を使用したファイル管理を容易にするために、$ID を @version に追加します。

3.2.3 クラス アノテーションの例
アノテーション名 クラス アノテーション
アノテーションの例:

PHP コード:

コードをコピー コードは次のとおりです。

/**
* を使用します。この要素は、{@}link} のような {@}inline タグ} を表します。
* @see parserStringWithInlineTags
* @package phpDocumentor
* @subpackage InlineTags
* @author Greg Beaver
* @since 1.0rc1
* @version $Revision: 1.21.2.6 $
* @tutorial inlinetags.pkg
*/


3.2. 4 クラス属性のアノテーションの例
アノテーション名 クラス属性のアノテーション
アノテーションのデモ:
PHP コード:

コードをコピー コードは次のとおりです:

/**
* 要素の型
*
* 型は面倒な処理を省略するために多くの関数で使用されます
*
* <br>* if get_class($blah) == 'parserBlah'<br>*
* 常に "inlinetag"
* @var string
*/
var $ type = 'inlinetag';

3.2.5 関数/クラス メソッドのアノテーションの例
アノテーション名 関数/クラス メソッドのアノテーション
アノテーションの例:
PHP コード:

コードをコピー コードは次のとおりです:

/**
* @常に文字列を返します ''
* DocBlock の短い説明を計算します
* @see parserStringWithInlineTags::getString()
* @see parserStringWithInlineTags::trimmedStrlen()
*/
function getString (){
return '';
}
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート