ホームページ > php教程 > php手册 > PHP PSR仕様中国語版_phpの基礎

PHP PSR仕様中国語版_phpの基礎

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-05-16 09:00:05
オリジナル
2051 人が閲覧しました

ドキュメント ウェアハウスのアドレス: https://github.com/hfcorriez/fig-standards

中国語版の PSR 仕様

なぜ Norm なのか

この抜粋は公式文を翻訳したものです。この組織は、コード プロジェクト間の共通点について議論することで、協調的なプログラミング環境を見つけることを目的としています。 。

これを見て、「Google が厳格なコード標準を強制する理由」という記事の次の一節を思い出しました。

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

Google では、任意のコードを表示し、すべての Google コード ライブラリに入力でき、それらを表示する権限があります。実際、このような権限を持っている人はほとんどいません。しかし、私が驚いたのは、インデント、名前付け、ファイル構造、コメント スタイルなど、非常に多くのコーディング標準により、驚くほど簡単にコードを読み、簡単に理解できるようになったことです。これには私はショックを受けました。なぜなら、これらの規範は取るに足らないものだと思っていたからです。彼らはそこまでのことはできなかったでしょうが、それでも彼らはそうしたのです。プログラムの基本的な構文構造を見るだけでコードの一部を理解できることがわかったとき、このような時間の節約は衝撃的です。


読者の皆様、規制についてはこれ以上言う必要はありません。

最後に書いてください
仕様書は必須ではありません、もちろん自分で決めることもできますが、仕様書を使用することで連携が容易になります。現在、さまざまな最新のアプリケーションを作成することは、もはや以前とは異なります。アプリケーションは通常、多くのモジュールで構成されています。仕様が実装されていない場合、プロジェクト全体の理解とコミュニケーションがより複雑になるだけです。

仕様を使用する場合、プロジェクトとあなた自身にとってのメリットは当然明白です。

承認されたすべての仕様参照: https://github.com/hfcorriez/ fig-standards/tree/zh_CN/Accept

コード スタイル仕様

このガイドの目的は、このガイドを閲覧するさまざまな開発者間の混乱を減らすことです。コード。認知の違いを減らすため。これは、PHP コードのフォーマット方法に関する一連の共通ルールを列挙します。
各メンバー プロジェクトの共通点が、この記事のスタイル ルールを形成します。異なる開発者が異なるプロジェクトで共同作業する場合、これらの異なるプロジェクト間で共通の標準が使用されます。したがって、このガイドの利点はルール自体にあるのではなく、ルールを共有することにあります。
RFC 2119 の特徴的なキーワードは、「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「MAY」という単語です。このドキュメントでは「オプション」を使用します。

1. 概要

コードは PSR-1 に準拠する必要があります。

コードでは、タブではなく 4 つのスペースのインデントを使用する必要があります。
コード行の長さにハード制限はありません。ソフト制限は 120 文字でなければならず、また 80 文字以下である必要があります。
名前空間宣言の下には空行が必要であり、use 宣言ブロックの下にも空行が必要です。
クラスの左中括弧は次の行に配置し、右中括弧はクラス本体の次の行に配置する必要があります。
メソッドの左中括弧は次の行に配置し、右中括弧はメソッド本体の下に配置する必要があります。
すべてのプロパティとメソッドには可視性 (翻訳者注: Public、Protect、Private) 宣言が必要です。抽象宣言と最終宣言は可視性の前にある必要があり、静的宣言は可視性の後にある必要があります。
制御構造のキーワードの後に​​はスペースを続ける必要があります。メソッドや関数は使用できません。
コントロール構造体の左中括弧は同じ行に配置し、右中括弧はコントロール本体の次の行に配置する必要があります。
制御構造の左ブラケットの後にスペースを入れたり、右ブラケットの前にスペースを入れたりしてはなりません。

1.1. 例
この例には、上記のルールのいくつかの簡単な表示が含まれています。

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

名前空間 Vendor\Package;
FooInterface を使用;
BarClass を Bar として使用;
OtherVendor\OtherPackage\BazClass を使用;

class Foo extends Barimplements FooInterface
{
public function sampleFunction($a, $b = null)
{
if ($a === $b) {
bar ();
} elseif ($a > $b) {
$foo->bar($arg1);
} else {
BazClass::bar($arg2, $arg3); }
}

最終的なパブリック静的関数 bar()
{
// メソッド本体
}
}

2. 概要
2.1 基本コード仕様
コードは PSR-1 のすべてのルールに準拠する必要があります。

2.2 ファイル
すべての PHP ファイルは、行終端文字として Unix LF (ライン フィード) を使用する必要があります。

すべての PHP ファイルは空行で終わる必要があります。

純粋な PHP コードのファイル終了タグ?> は省略する必要があります

2.3. 行
行の長さに厳密な制限を設けることはできません。

行の長さのソフト制限は 120 文字である必要があります。自動スタイル チェッカーはソフト制限について警告を発しますが、エラーは表示しません。

行の実際の長さは 80 文字を超えてはならず、長い行は 80 文字以内の後続の行に分割する必要があります。

空白行以外の行の後にはスペースを入れてはいけません。

空白行を使用すると、可読性が向上し、関連するコード ブロックを区別できます。

1 行に複数のステートメントを含めることはできません。

2.4. インデント
コードではインデントに 4 つのスペースを使用する必要があり、タブ文字をインデントとして使用することはできません。

注: タブと混合せずにスペースのみを使用すると、コードの違い、パッチ、履歴、コメントにおける一部の問題を回避できます。ホワイトスペースを使用すると、微妙なインデントを調整して行間の位置を調整することも非常に簡単になります。

2.5. キーワードと True/False/Null
PHP キーワードは小文字である必要があります。

PHP 定数 true、false、null は小文字である必要があります。

3. 名前空間と使用宣言
存在する場合、名前空間宣言の後に空行がなければなりません。

存在する場合は、すべての use ステートメントを namespace ステートメントの下に配置する必要があります。

use キーワードは 1 つの宣言でのみ使用する必要があります。

use 宣言ブロックの後には空行が必要です。

例:

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

namespace Vendor \パッケージ;

FooClass を使用します。
BarClass を Bar として使用します。
OtherVendor\OtherPackage\BazClass を使用します。

// ... 追加の PHP コード ...

4. クラス、プロパティ、およびメソッド
「クラス」という用語は、すべてのクラス、インターフェイス、および特性 (トレイト) を指します。

4.1. 拡張と継承
クラスの extends およびimplements キーワードは、クラス名と同じ行になければなりません。

クラスの左中括弧はその下の独自の行に配置する必要があり、右中括弧はクラス本体の後の独自の行に配置する必要があります。

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

namespace Vendor \Package;
FooClass を使用します;
BarClass を Bar として使用します;
OtherVendor\OtherPackage\BazClass を使用します;

class ClassName extends ParentClassimplements \ArrayAccess, \Countable
{
// 定数、プロパティ、メソッド
}

implementsリストは 1 つのインデントで複数の後続の行に分割できます。これを行う場合、リストの最初の項目は次の行に配置する必要があり、1 行にインターフェイスは 1 つだけ存在する必要があります。

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

namespace Vendor \パッケージ;

FooClass を使用します。
BarClass を Bar として使用します。
OtherVendor\OtherPackage\BazClass を使用します。

class ClassName extends ParentClassimplements
\ArrayAccess,
\Countable,
\Serializable
{
// 定数、プロパティ、メソッド
}

4.2. プロパティ
すべてのプロパティは可視性を宣言する必要があります。

var キーワードを使用して属性を宣言することはできません。

1 つのステートメントで複数の属性を宣言することはできません。

保護された可視性またはプライベートな可視性を示すために、属性名の前に 1 つのアンダースコアを付けることはできません。

プロパティ宣言は次のようになります。

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

namespace Vendor \パッケージ;

クラス ClassName
{
public $foo = null;
}

4.3. メソッド
すべてのメソッドは可視性を宣言する必要があります。

メソッド名には、保護された可視性またはプライベートな可視性を示すために 1 つのアンダースコアのみを使用しないでください。

メソッド名の宣言の後にスペースを続けることはできません。開き中括弧はメソッド本体の下の独自の行に配置する必要があり、閉じ中括弧はメソッド本体の下の独自の行に配置する必要があります。左括弧の後にスペースを入れたり、右括弧の前にスペースを入れたりしてはいけません。

メソッド定義は次のようになります。括弧、カンマ、スペース、中括弧に注意してください:

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

名前空間 Vendor\Package;

class ClassName
{
public function fooBarBaz($arg1, &$arg2, $arg3 = [])
{
// メソッド本体
}
}

4.4. メソッドパラメータ
パラメータリストでは、カンマの前にスペースがあってはならず、カンマの後にはスペースが 1 つ必要です。

メソッド内のデフォルト値を持つパラメータは、パラメータ リストの最後に配置する必要があります。

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

namespace Vendor \パッケージ;

class ClassName
{
public function foo($arg1, &$arg2, $arg3 = [])
{
// メソッド本体
}
}

パラメータ リストは、1 つのインデントで後続の複数の行に分割できます。これを行う場合、リストの最初の項目を次の行に配置し、各行にパラメータを 1 つだけ配置する必要があります。

パラメータ リストが複数行に分かれている場合、右括弧と左中括弧はスペースを入れて 1 行に配置する必要があります。

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

namespace Vendor \パッケージ;

class ClassName
{
public function aVeryLongMethodName(
ClassTypeHint $arg1,
&$arg2,
array $arg3 = []
) {
// メソッド本文
}
}

4.5. abstract、final、static
存在する場合、abstract 宣言とfinal 宣言は可視性宣言の前に配置する必要があります。

存在する場合、静的宣言の後に可視性宣言を続ける必要があります。

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

namespace Vendor \パッケージ;

抽象クラス ClassName
{
protected static $foo;

抽象保護関数 zim();

最終的なパブリック静的関数 bar()
{
// メソッド本体
}
}

4.6. メソッドと関数の呼び出し
メソッドまたは関数を呼び出すには、メソッドまたは関数名と左括弧の間にスペース、左括弧の後にスペース、右括弧の前にスペースがあってはなりません。関数リストでは、カンマの前にスペースがあってはならず、カンマの後にスペースが 1 つ必要です。

bar();
$foo->bar($arg1);
Foo::bar($arg2, $arg3);
パラメータリストは次のように分割できます。続く複数の行にはインデントが含まれています。これを行う場合、リストの最初の項目を次の行に配置し、各行に引数を 1 つだけ指定する必要があります。

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

$foo ->bar(
$longArgument,
$longerArgument,
$muchLongerArgument
);

5. コントロール構造
コントロール構造のスタイル ルールは次のように要約されます。

制御構造キーワードの後に​​はスペースが必要です
左括弧の後にはスペースがあってはなりません
右括弧の前にはスペースがあってはなりません
右括弧とキーワードの間にはスペースが必要です左中括弧
コード 本体は 1 回インデントする必要があります
右中括弧は本体の 1 行下にある必要があります
各構造の本体は中括弧で囲む必要があります。この構造はより標準化されているように見え、新しい行を追加するときにエラーが発生する可能性が低くなります。

5.1. if、elseif、else

if 構造は次のようになります。括弧、スペース、および中括弧の配置に注意してください。また、else と elseif は、前の本体の閉じ中括弧と同じ行上にあります。

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

if ( $expr1) {
// if body
} elseif ($expr2) {
// elseif body
} else {
// else body;
}

すべての制御キーワードを 1 つの単語として保持するには、else if の代わりにキーワード elseif を使用する必要があります。

5.2. スイッチ、ケース

スイッチ構造は次のようになります。括弧、スペース、中括弧に注意してください。 case ステートメントはスイッチからインデントする必要があり、break キーワード (または他の Break キーワード) はケース本体と同じレベルでインデントする必要があります。空ではないケース本体が落ちた場合は、// no Break のようなコメントが必要です。

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

switch ($expr) {
case 0:
echo '最初のケース、ブレークあり';
Break;
case 1:
echo '2 番目のケース、失敗します';
// ブレークなし
case 2:
case 3:
case 4:
echo '3 番目のケース、break の代わりに return';
return;
default:
echo 'デフォルトのケース';
Break;
}

5.3. while、do while
while ステートメントは次のようになります。括弧、スペース、中括弧の配置に注意してください。
コードをコピー コードは次のとおりです。

while ( $expr) {
// 構造体
}

同様に、do while ステートメントは次のようになります。括弧、スペース、中括弧の配置に注意してください。
コードをコピー コードは次のとおりです。

do {
// 構造体;
} while ($expr);

5.4. for
for ステートメントは次のようになります。括弧、スペース、中括弧の配置に注意してください。

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

for ( $i = 0; $i // 本体用
}

5.5. foreach

foreach ステートメントは次のようになります。括弧、スペース、中括弧の配置に注意してください。

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

foreach ( $iterable as $key => $value) {
// foreach body
}

5.6. try、catch
try catch ステートメントは次のようになります。括弧、スペース、中括弧の配置に注意してください。
コードをコピー コードは次のとおりです。

try {
// 本体を試してみる
} catch (FirstExceptionType $e) {
// 本体をキャッチ} catch (OtherExceptionType $e) {
// 本体をキャッチ
}

6. 締めくくり

クロージャは、宣言時に関数キーワードの後に​​スペースが必要で、使用前にはスペースが必要です。

開き中括弧は同じ行になければならず、閉じ中括弧は本文の次の行になければなりません。

パラメータ リストと変数リストの左括弧の後にスペースを入れたり、閉じ括弧の前にスペースを入れたりしてはいけません。

パラメータリストと変数リストでは、カンマの前にスペースがあってはならず、カンマの後にスペースがなければなりません。

デフォルト値を持つクロージャのパラメータは、パラメータ リストの後に配置する必要があります。

クロージャ宣言は次のようになります。括弧、スペース、中括弧の配置に注意してください。

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

$closureWithArgs = function ( $arg1, $arg2) {
// 本体
};
$closureWithArgsAndVars = function ($arg1, $arg2) use ($var1, $var2) {
// 本体
};

パラメータと変数のリストは、1 つのインデントで複数の後続の行に分割できます。これを行う場合、リストの最初の項目を次の行に配置し、1 行にパラメータまたは変数を 1 つだけ配置する必要があります。

最後のリスト (パラメーターまたは変数) が複数の行に分割されている場合、閉じ括弧と開き中括弧は、間にスペースを入れてそれぞれの行に配置する必要があります。

以下は、複数行に分割されたパラメータと変数リストの例です。

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

$longArgs_noVars = function (
$longArgument,
$longerArgument,
$muchLongerArgument
) { // 本文
};

$noArgs_longVars = function () use (
$longVar1,
$longerVar2,
$muchLongerVar3
) {
// 本体
};

$longArgs_longVars = 関数 (
$longArgument,
$longerArgument,
$muchLongerArgument
) use (
$longVar1,
$longerVar2,
$muchLongerVar3
) > >) {
// 本文
};

$longArgs_shortVars = function (
$longArgument,
$longerArgument,
$muchLongerArgument
) use ($var1) {
// body
};

$shortArgs_longVars = 関数 ($arg) use (
$longVar1,
$longerVar2,
$muchLongerVar3
) {
// body
};

クロージャが関数またはメソッドのパラメータとして呼び出される場合、上記の書式設定ルールも適用されることに注意してください。

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

$foo ->bar(
$arg1,
function ($arg2) use ($var1) {
// body
},
$arg3
);

7. 結論
このガイドには意図的に省略されているスタイル要素や実践が数多くあります。これらには以下が含まれますが、これらに限定されません。

グローバル変数とグローバル定数の宣言

メソッド宣言

演算子と代入

行間の配置

コメントとドキュメントのブロック

クラス名にはプレフィックスとサフィックスが付けられます

ベストプラクティス

将来の提案では、これらまたは他のスタイル要素や実践に合わせてこのガイドを修正および拡張する可能性があります。

付録 A アンケート
このスタイル ガイドを作成するために、プロジェクトのアンケートを使用して一般的な慣行を特定しました。アンケートはここにあり、他の人も閲覧できます。

A.1.调查データベース
url,http://www.horde.org/apps/horde/docs/CODING_STANDARDS,http://pear.php.net/manual/en/standards.php,http://solarphp.com /manual/appendix-standards.style,http://framework.zend.com/manual/en/coding-standard.html,http://symfony.com/doc/2.0/contributing/code/standards.html,http ://www.ppi.io/docs/coding-standards.html、https://github.com/ezsystems/ezp-next/wiki/codingstandards、http://book.cakephp.org/2.0/en/contributing /cakephp-coding-conventions.html、https://github.com/UnionOfRAD/lithium/wiki/Spec:-Coding、http://drupal.org/coding-standards、http://code.google.com/ p/sabredav/,http://area51.phpbb.com/docs/31x/coding-guidelines.html,https://docs.google.com/a/zikula.org/document/edit?authkey=CPCU0Us&hgd=1&id =1fcqb93Sn-hR9c0mkN6m_tyWnmEvo​​swKBtSc0tKkZmJA,http://www.chisimba.com,n/a,https://github.com/Respect/project-info/blob/master/coding-standards-sample.php,n/a,Object PHP の体操、http://doc.nette.org/en/coding-standard、http://flow3.typo3.org、https://github.com/propelorm/Propel2/wiki/Coding-Standards、http: //developer.joomla.org/coding-standards.html
投票、はい、はい、はい、はい、はい、はい、はい、はい、はい、はい、はい、はい、はい、はい、いいえ、いいえ、いいえ、?、はい、いいえ、はいindent_type,4,4,4,4,4,tab,4,tab,tab,2,4,tab,4,4,4,4,4,4,tab,tab,4,tab
line_length_limit_soft,75,75,75,75,no,85,120,120,80,80,80,no,100,80,80,?,?,120,80,120,no,150
line_length_limit_hard,85,85,85, 85,いいえ,いいえ,いいえ,いいえ,100,?,いいえ,いいえ,いいえ,100,100,?,120,120,いいえ,いいえ,いいえ,いいえ
クラス名,勉強中,勉強中,勉強中,勉強中,勉強中,勉強中,スタディ、スタディ、スタディ、スタディ、スタディ、ロワーアンダー、スタディ、ロワー、スタディ、スタディ、スタディ、スタディ、?、スタディ、スタディ、スタディ
class_brace_line、次、次、次、次、次、同じ、次、同じ、同じ、同じ、同じ、次、次、次、次、次、次、次、次、同じ、次、次
定数名、上、上、上、上、上、上、上、上、上,上,上,上,上,上,上,上,上,上,上,上,上,上
true_false_null,下,下,下,下,下,下,下,下,下,上,下,下,下,上,下,下,下,下,下,上,下,下
メソッド名,ラクダ,ラクダ,ラクダ,ラクダ,ラクダ,ラクダ,ラクダ,ラクダ,ラクダ,ラクダ,キャメル、下段、キャメル、キャメル、キャメル、キャメル、キャメル、キャメル、キャメル、キャメル、キャメル、キャメル
method_brace_line、次、次、次、次、次、同じ、次、同じ、同じ、同じ、同じ、次、次、同じ、次、次、次、次、次、同じ、次、次
control_brace_line、同じ、同じ、同じ、同じ、同じ、同じ、次、同じ、同じ、同じ、同じ、次、同じ、同じ、次、同じ、同じ、同じ、同じ、同じ、同じ、次
control_space_after、はい、はい、はい、はい、はい、いいえ、はい、はい、はい、はい、いいえ、はい、はい、はい、はい、はい、はい、はい、はい、はい、はい、はい
always_use_control_braces、はい、はい、はい、はい、はい、はい、いいえ、はい、はい、はい、いいえ、はい、はい、はい、はい、いいえ、はい、はい、はい、はい、はい、はい
else_elseif_line、同じ、同じ、同じ、同じ、同じ、同じ、次、同じ、同じ、次、同じ、次、同じ、次、次、同じ、同じ、同じ、同じ、同じ、同じ、次
case_break_indent_from_switch,0/1,0/1,0/1,1/2,1/2,1/2,1/2,1/1, 1/1、1/2、1/2、1/1、1/2、1/2、1/2、1/2、1/2、1/2、0/1、1/1、1/ 2,1/2
function_space_after,いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ
closed_php_tag_required、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ、はい、いいえ、いいえ、いいえ、いいえ、はい、いいえ、いいえ、いいえ、いいえ、はい、いいえ、いいえ
行末,LF,LF,LF,LF,LF,LF,LF,LF,?,LF,?,LF,LF,LF,LF,?,,LF,?,LF,LF,LF
static_or_visibility_first,static,?,static,どちらか,どちらか,どちらか,可視性,可視性,可視性,どちらか,静的,どちらか,?,可視性,?,?,どちらか,どちらか,可視性,可視性,静的,?
control_space_parens 、いいえ、いいえ、いいえ、いいえ、いいえ、はい、いいえ、いいえ、いいえ、いいえ、いいえ、はい、?、いいえ、いいえ、いいえ、いいえ、いいえ、いいえ
blank_line_after_php,no ,いいえ、いいえ、いいえ、はい、いいえ、いいえ、いいえ、いいえ、はい、はい、いいえ、いいえ、はい、?、はい、はい、いいえ、はい、いいえ、はい、いいえ
class_method_control_brace,next/next /同じ、次/次/同じ、次/次/同じ、次/次/同じ、次/同じ、同じ/同じ/同じ、次/次/次、同じ/同じ/同じ、同じ/同じ/同じ、同じ/同じ/同じ、同じ/同じ/同じ、次/次/次、次/次/同じ、次/同じ/同じ、次/次/次、次/次/同じ、次/次/同じ、次/次/同じ、次/次/同じ、同じ/同じ/同じ、次/次/同じ、次/次/次
A.2.
indent_type: 縮小タイプを説明します。tab = "タブ文字を使用"、2 または 4 = "スペースの数"

line_length_limit_soft: 行の長さ (文字数) の「ソフト」制限。 ? = は「いいえ」を意味するものではなく、「いいえ」という数字は制限がないことを意味するものではありません。

line_length_limit_hard: 行の長さ (文字数) の「ハード」制限。 ? = は意味や数値ではなく、no は制限がないことを意味します。

class_names: クラス名に名前を付ける方法 lower = 小文字のみ、 lower_under = 小文字と下線、studly = ラクダ型。

class_brace_line: クラスの左中括弧は同じ行に配置する必要がありますか、それとも次の行に配置する必要がありますか?

constant_names: クラス定数に名前を付けるにはどうすればよいですか? upper = 大文字と下線の区切り文字。

true_false_null: すべて文字ですか、それともすべて大文字ですか?

method_names: メソッド名に名前を付けるにはどうすればよいですか? Camel = キャメルケース、 lower_under = 小文字と下線区切り文字。

method_brace_line: メソッドの左中括弧は同じ行にありますか、それとも次の行にありますか?

control_brace_line: 制御構造の左中括弧は同じ行にありますか、それとも次の行にありますか?

control_space_after: 制御構造キーワードの後に​​スペースはありますか?

always_use_control_braces: 制御構造には常に中括弧を使用しますか?

else_elseif_line: else と elseif を使用する場合、それらは同じ行に配置する必要がありますか、それとも次の行に配置する必要がありますか?

case_break_indent_from_switch: case と Break は switch ステートメントから何回インデントされますか?

function_space_after: 関数名と関数呼び出しの左括弧にスペースはありますか?

closed_php_tag_required: 純粋な PHP ファイルの場合、タグを閉じる必要がありますか?>?

line_endings: どのような行末が使用されますか?

static_or_visibility_first: メソッドを定義するとき、静的と可視性のどちらが先に来ますか?

control_space_parens: 制御構造式で、左括弧の後と右括弧の前にスペースがありますか?はい = if ( $expr )、いいえ = if ($expr)。

blank_line_after_php: PHP 開始タグの後に空行は必要ですか?

class_method_control_brace: クラス、メソッド、および制御構造内の左中括弧の位置。

A.3.调查結果
indent_type:
tab: 7
2: 1
4: 14
line_length_limit_soft:
?: 2
no: 3
75: 4
> 80: 6
85: 1
100: 1
120: 4
150: 1
line_length_limit_hard:
?: 2
no: 11
85: 4
100: 3
120: 2
クラス名:
? ?: 1
下位: 1
下位アンダー: 1
スタディ: 19
クラスブレースライン:
次: 16
同じ: 6
定数名:
上位: 22
true_false_null:
下位: 19
上位: 3
メソッド名:
キャメル: 21
lower_under: 1
method_brace_line:
次: 15
同じ: 7
control_brace_line:
次: 4
同じ: 18
control_space_after:
no: 2 はい: 20
always_use_control_braces:
いいえ: 3
はい: 19
else_elseif_line:
次: 6
同じ: 16
case_break_indent_from_switch:
0/1 : 4
1/1: 4
1/2: 14
function_space_after:
no: 22
closed_php_tag_required:
no: 19
yes: 3
line_endings :
?: 5
LF: 17
static_or_visibility_first:
?: 5
いずれか: 7
static: 4
Visibility: 6
control_space_parens:
?: 1
いいえ: 19
はい: 2
blank_line_after_php:
?: 1
いいえ: 13
はい: 8
class_method_control_brace:
next/next/次: 4
次/次/同じ: 11
次/同じ/同じ: 1
同じ/同じ/同じ: 6

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