PSR-1 基础编码规范

概括

  • PHP 代码文件必须<?php 长标签 或 <?= 短输出标签;
  • PHP 代码文件 必须 以 不带 BOM 的 UTF-8 编码;
  • 命名空间以及类 必须 符合 PSR 的自动加载规范
    这意味着每个类都独立为一个文件,并且至少在一个层次的命名空间内
    类的命名 必须 遵循StudlyCaps 大写开头的驼峰命名规范;
  • 类中的常量所有字母都 必须 大写,单词间用下划线分隔;
    类的属性命名 可以 遵循:
    1. 大写开头的驼峰式 ($StudlyCaps)
    2. 小写开头的驼峰式 ($camelCase)
    3. 下划线分隔式 ($under_score)
  • 方法名称 必须 符合 camelCase 式的小写开头驼峰命名规范。

    PSR-2 编码风格规范

  • 每行的字符数 应该 软性保持在 80~120 之间
  • 每个namespace命名空间声明语句和use声明语句块后面,必须插入一个空白行。
  • 类的开始花括号({) 必须 写在类声明后自成一行,结束花括号(})也 必须 写在类主体后自成一行。
  • 方法的开始花括号({) 必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行。
  • 类的属性和方法 必须 添加访问修饰符(privateprotected 以及 public),abstract 以及 final 必须 声明在访问修饰符之前,而 static 必须 声明在访问修饰符之后。
  • 控制结构的关键字后 必须 要有一个空格符,而调用方法或函数时则不要有空格。
  • 控制结构的开始花括号({) 必须 写在声明的同一行,而结束花括号(}) 必须 写在主体后自成一行。
  • 控制结构的开始左括号后和结束右括号前,都 一定不可 有空格符。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
namespace Vendor\Package;

use FooInterface;
use BarClass as Bar;
use OtherVendor\OtherPackage\BazClass;

class Foo extends Bar implements FooInterface
{
public function sampleMethod($a, $b = null)
{
if ($a === $b) {
bar();
} elseif ($a > $b) {
$foo->bar($arg1);
} else {
BazClass::bar($arg2, $arg3);
}
try {
// try 主体
} catch (FirstExceptionType $e) {
// catch 主体
} catch (OtherExceptionType $e) {
// catch 主体
}
}

final public static function bar()
{
// 方法体
}
}

 评论


本站使用 Material X 作为主题 , 总访问量为 次 。
隐藏