Laravel框架编码规范
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Laravel框架编码规范
一、PHP中的代码规范
1.独立源文件必须只使用
2.源文件中必须只使用不带BOM的UTF-8作为PHP代码.
二注释规范
1.使用单行注释方法注释”//”;
三命名规则
1.文件名:
a)类文件:类名.php
b)函数名:
2. 目录名:
统一小写??
3.类名:
类名称声明必须符合StudlyCaps(大写骆驼拼写法)
4.函数名:
函数名称声明必须符合camelCase(小写骆驼拼写法)
5.方法名:
方法名称声明必须符合camelCase(小写骆驼拼写法)
6.变量名:
小写骆驼拼写法
7.常量名:
a)所有的常量都要使用const来定义。
b)常量名应具有描述性,杜绝一切拼音英文混杂的命名方式。
c)常量名所有字母必须大写,少数特别必要的情况下,可使用划线来分隔单词。
四代码中空行与空格的使用
8.针对PHP文件
a)所有的PHP文件必须使用Unix的LF作为行结尾
b)在纯PHP文件中必须省略文件结尾的?>标记
9.针对文件行
a)禁止对每一行的长度进行硬限制(Hard Limit)
b)每一个行长度软限制(Soft Limit)必须为120个字符。如果样式检查的软件发现文件不符合
该软限制时必须给予warn但是禁止给予error
c)每一个非空白行后面禁止有多余的尾随空格
d)空白行may(可以)被添加来提高代码的可读性,以及用于分割不相关代码
e)每一行禁止超过一条语句
f)在命名空间声明行后,必须有一个空白行
g)文本缩进
五程序中的语言结构
1. 流程控制:
PHP中包含if/else/elseif,switch/case,while/dowhile,for,foreach 五种控制结构,
它们的编码规范有一部分共性:
1. 控制关键字后面必须有一个空格
2. 控制结构开括号(后面禁止有空格
3. 控制结构闭括号)前面禁止有空格
4. 控制结构开括号(与大括号}之间必须有一个空格
5. 控制结构体必须缩进一次
6. 控制结构闭大括号}必须在控制结构体后单独的一行
它们之间除了上述共性以外,还有各自的规范。
h)条件语句:if/elseif/else
i)分支结构:switch/case
每一个case 必须相对于switch有一个缩进。如果一个case没有break或者return 之类中断语句,那么必须在它相应位置注释// no break
j)循环结构:while、do…while、
k)循环结构:for
l)控制结构:foreach
2. 闭包(函数)定义:
m)function和use关键字与括号(之间必须有一个空格
n)闭包的大开括号必须与括号)在空一行,并且之间有一个空格
o)闭包的大闭括号必须与闭包实体部分分割开,在单独一行;并且与闭包语句‘;’之间没有空格
p)闭包的function 和use的参数与括号()之间禁止有空格,并且多个参数之间的‘,’前面没有空格,后面有一个空格
q)如果闭包的参数有默认值,那么它必须放在参数列表的后面
r)闭包的参数列表可以分多行,具体的请参考实例
六面向对象篇的编码规范:
1. 命名空间和Use声明
s)在命名空间声明行后,必须有一个空白行
t)Use语句必须在命名空间声明行后面
u)每一行必须只能有一个Use声明
v)所有的Use语句后面,必须有一个空白行
2. 类声明:Extents和implements
a) 类声明的{}大括号必须在两个独立行中
b) 如果类声明中有extends和implements,那么它们必须与类声明在同一行
c) 如果同时有extends与implements,那么必须先写extends,再写implements
d) 如果implements列表有多个,may把他们分割到多行中,每一行单独缩进。如果这样做,
那么第一个implements就必须在新行,并且每个implements单独占用一行。
3. 类声明/函数声明:abstract,final,static
如果一个类或者函数在声明时,其中包含abstract,final,static三个关键字,那么与可见性关键字(public private protected)之间顺序为:abstarct 和final 必须在可见性关键字之前;而static 必须在可见性关键字之后
4. 类属性:
w)每一个类属性必须指定它们的可见性
x)每一条语句必须声明单个属性
y)不推荐使用_(下划线)作为属性名称的开头来表示属性为protected或private
5. 方法声明与方法参数:
a 每一个方法必须显示指定它们的可见性
b不推荐使用_(下划线)作为方法名称的开头来表示方法为protected或private
c 方法名称后面禁止带有空格。并且方法的大括号{}必须分别在单独的行
d 方法的括号()内部的前后禁止有空格,
e 方法的每一个参数后面禁止有空格,多个参数之间的逗号后面必须有空格。
f 含有默认值的参数必须放到参数类别后面
g 参数列表may被分割为多行,每行缩进一次;(括号紧跟在行数名后面,)在单独一行,并
且与函数声明缩进对齐,后面紧跟一个空格和函数的大括号{。每一个参数必须在单独行。