【php】【psr】psr2 编码风格规范

为避免浏览多个作者参与编写的项目时,因风格的不同造成不便时,大家可以使用同一套风格规范来统一标准

  • 代码必须遵循PSR1的规范
  • 缩进使用4个空格,而不是TAB键缩进
  • 每行代码控制在80-120个
  • 每个namespace申明语句后,每个'use'申明语句后一定要空一行
  • 类的开始和结束花括号必须自成一行,方法的也是
  • 类的属性必须添加访问控制修饰符如private,public,protectedabstract,final必须放在访问修饰符之前,static放在
    访问修饰符之后
  • 控制结构的关键字后面必须要有个空格 如 if (),而调用函数或方法则一定不能有空格 应getFunction()
  • 控制结构的开始花括号和申明写在一行,结束花括号自成一行;开始花括号后,结束花括号前一定不能有空格
  • 所有PHP文件以Unix LF (linefeed)作为行的结束符
  • 所有PHP文件必须以空白行结束
  • 纯PHP文件必须省略最后的 ?>
  • 非空行后一定不可有多余的空格符
  • 每行一定不可存在超过一条语句
  • 关键字全部小写
  • use语句,一行应该只有一个
  • 类的extends,implements 必须和类名在一行,implements继承的接口名可以多行,多行时一行只能有一个接口名
  • 一定不要用var申明属性
  • 不要使用下划线定义属性和方法
  • 方法名一定要定义访问修饰符
  • 方法申明的左括号后右括号前不要有空格
  • 方法的参数后面逗号紧接参数名,逗号后有空格
  • 拆分成多行的方法参数 结束括号和开始的花括号要在一行,方法的申明和开始括号在一行
  • 调用方法时和方法的申明规则一样
  • 控制结构结束)和开始的{之间要有个空格
  • 控制结构 else 或 else if 必须和 开始花括号和结束花括号在一行 如 } else {
  • 控制结构的结构体必须要有缩进
  • switch语句,case 相对于switch要有段缩进,break相对于case要有段缩进
  • 存在非空的case直穿语句时,必须交上//no break注释
<?php
switch ($expr) {
    case 0:
        echo 'First case, with a break';
        break;
    case 1:
        echo 'Second case, which falls through';
        // no break
    case 2:
    case 3:
    case 4:
        echo 'Third case, return instead of break';
        return;
    default:
        echo 'Default case';
        break;
}
<?php
namespace VendorPackage;

use FooInterface;
use BarClass as Bar;
use OtherVendorOtherPackageBazClass;

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

    final public static function bar()
    {
        // 方法的内容
    }
}
原文地址:https://www.cnblogs.com/china-flint/p/11132316.html