- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
PHP编程规范
(试行)
前 言
为规范PHP开发的编码风格,提高开发效率和降低开发人员的时间成本,建立统一的PHP开发标准体系,依据国际、国内相关标准、法规,参照国际、国内通行的职业技能标准制定本规范。
目录
TOC\o1-3\h\z\u1. 适用范围 5
2. 定义和术语 5
2.1PHP语言 5
2.2程序代码 5
3. 代码编写格式 5
3.1代码标记 5
3.2缩进 5
3.3长度 5
3.4行宽 6
3.5间隔 6
3.6对齐 6
3.7括号 6
4. 注释 7
4.1预注释 7
4.2类、接口注释 8
4.3函数方法注释 8
4.5其它注释 9
5. 命名 9
5.1文件 9
5.2变量 9
5.3常量 10
5.4类、接口 10
5.5方法、函数 10
6. 声明 10
6.1类、接口 10
6.2方法 10
6.3变量 11
6.4常量 11
6.5其他 11
7. 表达式与语句 12
7.1控制语句 12
7.2循环语句 13
8. 错误与异常 13
8.1已检查异常与运行时异常 13
8.2异常错误提示设置 13
9. 测试与BUG跟踪 13
9.1测试基本原则 13
9.2BUG跟踪和缺陷处理 13
10. 性能与安全 14
10.1输入与输出 14
10.2针对PHP.INI的规则 14
10.3SQL语句处理规则 14
11. 其它 14
12.附录 14
12.1注释模板 14
PHP编程规范
1. 适用范围
本规范规定了PHP开发当中的代码编写格式、注释及命名规则、错误及异常的处理方法、性能与安全的操作准则。确立了PHP开发工作的一般原则。针对PHP开发过程当中模糊不清的约定给出了统一明确的约定指南。
本标准适用于从事PHP开发的相关企业、开发团队、教育和培训服务机构以及相关决策等机构,针对PHP开发工作进行约定、检验、鉴定以及针对PHP开发人员的技术培训。
2. 定义和术语
2.1PHP语言
PHP是基于服务端应用和创建动态网页的多用途脚本语言,可嵌入HTML,并支持主流数据库和操作系统。
2.2程序代码
程序代码是一系列计算机系统可以识别的,人类可读的具有特定含义的计算机语言字符集合。
3. 代码编写格式
3.1代码标记
PHP程序可以使用?php...?或?...?来界定PHP代码,在HTML页面中嵌入纯变量时,可以使用?=$variablename?这样的形式。
3.2缩进
PHP程序中缩进宜按标准键盘的1个“TAB”键,即4个空格为单位,一段程序中不应出现两种缩进的规则。
3.3长度
a)单个函数的有效代码长度应控制在100行以内,不包括注释行。
b)单个类的有效代码长度应控制在1500行以内,不包括注释行。
3.4行宽
每行PHP代码的行宽宜设置为80个字符。
3.5间隔
a)操作符两端应各空一个字符。b)相应独立的功能模块之间应使用注释行间隔,并标明相应内容。c)程序体上下之间应加入一个空白行,不应使用多空行。
3.6对齐
a)关系密切的代码行应对齐,例如类型、修饰、名称、参数等。
b)连续赋值时应对齐操作符。
c)方法参数过多时应在每个参数的逗号后换行并对齐。
d)控制或循环中的条件大于行宽时,应在操作符前换行,对齐并注释相应条件。e)变量定义应通过添加空格对齐操作符,同一类型的变量应放在一起。
3.7括号
a)小括号(“()”)使用过程中,“(”应和函数的关键词紧贴在一起,除此以外宜使用空格将“(”同前面的内容分开;右括号“)”除后面是“)”或者是“.”以外,其它内容应一律用空格隔开;
b)大括号(“{}”)中的语句应单独作为一行,其中:“{”应紧跟语句后;“}”应单独一行与程序体第一个字符对齐,并说明相应匹配的功能模块;
c)较长的方法以及类、接口等的}后应使用//end...等标识结束。例如:类的结束符:}//EOCClassName,
方法结束符:}//endmethodName(),功能块结束:}//endif...userNameisnull?循环体结束:}//endfor...everyuserinuserLis
文档评论(0)