PSR-1 基本コード仕様

WBOY
WBOYオリジナル
2016-06-20 12:31:531004ブラウズ

基本コード仕様

この仕様は、共有 PHP コード間の高度な技術的相互運用性を保証するために、コードの基本要素に関連する標準を策定します。

1. 概要-----

  • PHP コード ファイル は a9b6c718bbc34b0017d4bf506a65599d長いタグまたは e001818591141260ad444db4de1b1edb短い出力タグ

    他のカスタム タグを使用しないでください。

  • 2.2. 文字エンコーディング
  • PHP コードは BOM なしの UTF-8 エンコーディングのみを使用する必要があります。 2.3. 依存関係の影響 (副作用)

  • PHP ファイルでは、
は、クラス、関数、定数などの新しい宣言のみを定義する必要があります。依存関係を生成しない 効果操作は、依存効果を生成する論理操作のいずれかですが、
    が両方を同時に持つべきではありません。
  1. 「副作用」という用語は、クラス、関数、定数などを直接宣言せずに、ファイルをインクルードするだけで実行される論理演算を意味します。

「依存する影響」には、出力の生成、直接の require または include、外部サービスへの接続、ini 構成の変更、エラーまたは例外のスロー、グローバル変数または静的変数の変更、ファイルの読み取りまたは書き込み、等

以下は反例であり、宣言と従属効果を含むコードです。

以下は例であり、宣言のみを含み、従属効果を生成しないコードです。 :

名前空間とクラス

名前空間とクラスの命名は [PSR-0][] に従う必要があります。 仕様では、各クラスは個別のファイルであり、名前空間には少なくとも 1 つのレベル、つまり最上位の組織名 (ベンダー名) があります。

クラスの命名は、大文字で始まる StudlyCaps のキャメルケース命名規則に従う必要があります。

PHP 5.3 以降のバージョンのコードは、公式の名前空間を使用する必要があります。 例:

5.2.x およびそれ以前のバージョン

では、

疑似名前空間の書き込みを使用する必要があり、慣例としてトップレベルの組織名 (ベンダー) を使用します。 Vendor _ などの名前) はクラスの接頭辞です。

<?php// 从属效应:修改 ini 配置ini_set('error_reporting', E_ALL);// 从属效应:引入文件include "file.php";// 从属效应:生成输出echo "<html>\n";// 声明函数function foo(){    // 函数主体部分}

クラスの定数、プロパティ、メソッド

<?php// 声明函数function foo(){    // 函数主体部分}// 条件声明**不**属于从属效应if (! function_exists('bar')) {    function bar()    {        // 函数主体部分    }}
    ここでの「クラス」とは、すべてのクラス、インターフェイス、および再利用可能なコード ブロック (特性) を指します
  1. 4.1. 定数

クラス

内のすべての文字は

で大文字にする必要があり、単語はアンダースコアで区切られます。

次のコードを参照してください:

4.2. 属性

<?php// PHP 5.3及以后版本的写法namespace Vendor\Model;class Foo{}
クラスの属性命名はキャメルケース ($StudlyCaps) に従うことができます。 ) 大文字で始まるか、小文字で始まる CamelCase ($camelCase) またはアンダースコア区切り ($under_score) はこの仕様では必須ではありませんが、どの命名方法に従う場合でも、

内で一貫している必要があります。一定の範囲。このスコープは、チーム全体、パッケージ全体、クラス全体、またはメソッド全体にすることができます。

4.3. メソッド
<?php// 5.2.x及之前版本的写法class Vendor_Model_Foo{}
    メソッド名
  1. は、小文字で始まるキャメルケース () スタイルの命名規則に
  2. 準拠する必要があります。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。