- PHP代码文件 必须 以 <?php 或 <?= 标签开始;
- PHP代码文件 必须 以 不带 BOM 的 UTF-8 编码;
- 方法名称 必须 符合 camelCase 式的小写开头驼峰命名规范(CI框架除外)。
- 类的常量中所有字母都 必须 大写,词间以下划线分隔。
- PSR-2
- 每个 namespace 命名空间声明语句和 use 声明语句块后面,必须 插入一个空白行。
<?php
namespace Vendor\Package;
use FooClass;
use BarClass as Bar;
use OtherVendor\OtherPackage\BazClass;
- 每行 不该 多于80个字符,大于80字符的行 应该 折成多行。
- 类的开始花括号({) 必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行。
<?php
namespace Vendor\Package;
class ClassName
{
public $foo = null;
}
- 方法的开始花括号({) 必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行。
<?php
namespace Vendor\Package;
class ClassName
{
public function fooBarBaz($arg1, &$arg2, $arg3 = [])
{
// method body
}
}
- 类的属性和方法 必须 添加访问修饰符(private、protected 以及 public),abstract 以及 final 必须 声明在访问修饰符之前,而 static 必须 声明在访问修饰符之后。
<?php
namespace Vendor\Package;
abstract class ClassName
{
protected static $foo;
abstract protected function zim();
final public static function bar()
{
}
}
- 控制结构的关键字后 必须 要有一个空格符,而调用方法或函数时则 一定不可 有。
- 控制结构的开始花括号({) 必须 写在声明的同一行,而结束花括号(}) 必须 写在主体后自成一行。
- 控制结构的开始左括号后和结束右括号前,都 一定不可 有空格符。
else 和 elseif 都与前面的结束花括号在同一行。
<?php
if ($expr1) {
// if body
} elseif ($expr2) {
// elseif body
} else {
// else body;
}