共计 1063 个字符,预计需要花费 3 分钟才能阅读完成。
基本规范
PHP 代码文件 必须 以 <?php 或 <?= 标签开始;
PHP 代码文件 必须 以 不带 BOM 的 UTF-8 编码;
类的命名 必须 遵循 StudlyCaps 大写开头的驼峰命名规范;
类中的常量所有字母都 必须 大写,单词间用下划线分隔;
方法名称 必须 符合 camelCase 式的小写开头驼峰命名规范。
psr- 0 自动加载规范
命名空间以及类名称中的下划线
\namespace\package\Class_Name => /path/to/project/lib/vendor/namespace/package/Class/Name.php
\namespace\package_name\Class_Name => /path/to/project/lib/vendor/namespace/package_name/Class/Name.php
当从文件系统中载入标准的命名空间或类时,都将添加 .php 为目标文件后缀;
顶级组织名(Vendor Name)\ 命名空间(Namespace)\ 类名(Class);
psr- 1 规范
类属性命名
大写开头的驼峰式 ($StudlyCaps)
小写开头的驼峰式 ($camelCase)
下划线分隔式 ($under_score)
psr- 2 风格规范
每个 namespace 命名空间声明语句和 use 声明语句块后面,必须 插入一个空白行。
类的开始花括号({)必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行。
方法的开始花括号({)必须 写在函数声明后自成一行,结束花括号(})也 必须 写在函数主体后自成一行。
类的属性和方法 必须 添加访问修饰符(private、protected 以及 public),abstract 以及 final 必须 声明在访问修饰符之前,而 static 必须 声明在访问修饰符之后。
控制结构的关键字后 必须 要有一个空格符,而调用方法或函数时则 一定不可 有。
控制结构的开始花括号({)必须 写在声明的同一行,而结束花括号(})必须 写在主体后自成一行。
psr- 3 日志接口规范
psr- 4 自动加载规范
全限定类名必须拥有顶级命名空间
全限定类名可以有一个或者多个子命名空间名称。
全限定类名必须有一个最终的类名(我想意思应该是你不能这样 <NamespaceName>(<SubNamespaceNames>)* 来表示一个完整的类)。
废弃 Namespaceclass_method 的下划线结构
psr- 5 注释规范
psr- 6 缓存接口规范
psr-7http 消息接口规范
psr- 9 安全规范
psr-11 容器接口规范
参考资料
Laravel 社区 GitHub