PHP项目编码规范

合集下载

php 编码规则

php 编码规则

php 编码规则
php的编码规则主要包括以下几个方面:
1.缩进和空格:php代码应该使用一致的缩进方式,通
常使用四个空格作为缩进。

在代码块之间使用空格进行分隔,例如在条件语句、循环、函数调用等地方。

2.命名规范:php变量和函数名应该使用小写字母和下
划线,避免使用驼峰命名法。

类名应该使用大写字母和驼峰命名法。

3.引号使用:字符串应该使用单引号或双引号括起来,
避免混合使用不同类型的引号。

4.代码块:php代码块应该使用花括号({})进行包围,即使代码块为空也应该包含花括号。

5.注释:php代码中应该使用注释来解释代码的功能和
目的。

注释可以使用单行注释(//)或多行注释(/* */)。

6.代码格式化:php代码应该遵循一致的格式化规则,
可以使用代码编辑器或IDE自动格式化功能来确保代码的整齐和一致性。

以上是php编码规则的一些基本要点,当然还有其他一些细节需要注意,如变量命名规范、函数命名规范、代码简洁度等。

PHP编码规范

PHP编码规范

PHP编码规范这是给⼩组制定的php编码规范该 PHP 编码规范基本上是同 PSR 规范的。

有⼀部分的编码规范 PSR 中是建议,此编码规范会强制要求。

此编码规范是以 PSR-1 / PSR-2 / PSR-2扩展为蓝本,并增加了相应的细节说明。

通则基本编码PHP代码必须使⽤<?php ?>长标签或<?= ?>短输出标签;⼀定不可使⽤其它⾃定义标签。

PHP代码必须且只可使⽤不带BOM的UTF-8编码⼀份PHP⽂件中应该要不就只定义新的声明,如类、函数或常量等不产⽣从属效应的操作,要不就只有会产⽣从属效应的逻辑操作,但不该同时具有两者“从属效应”(side effects)⼀词的意思是,仅仅通过包含⽂件,不直接声明类、函数和常量等,⽽执⾏的逻辑操作。

“从属效应”包含却不仅限于:⽣成输出、直接的require或include、连接外部服务、修改 ini 配置、抛出错误或异常、修改全局或静态变量、读或写⽂件等。

以下是⼀个错误的例⼦,⼀份包含声明以及产⽣从属效应的代码:<?php// 从属效应:修改 ini 配置ini_set('error_reporting', E_ALL);// 从属效应:引⼊⽂件include "file.php";// 从属效应:⽣成输出echo "<html>\n";// 声明函数function foo(){// 函数主体部分}下⾯是⼀个范例,⼀份只包含声明不产⽣从属效应的代码:<?php// 声明函数function foo(){// 函数主体部分}// 条件声明**不**属于从属效应if (! function_exists('bar')) {function bar(){// 函数主体部分}}⽂件所有PHP⽂件必须使⽤Unix LF (linefeed)作为⾏的结束符。

psr 规范

psr 规范

psr 规范PSR(PHP Standards Recommendations)是由PHP-FIG(PHP Framework Interop Group)组织制定的一系列PHP编码规范。

这些规范旨在为PHP开发人员提供统一的代码风格和最佳实践,以便增加代码的可读性、可维护性和可扩展性。

以下是对PSR规范的简要描述:1. PSR-1: 基本编码规范PSR-1规范主要定义了PHP代码的基本要求,包括文件命名空间、文件编码方式、类命名和文件自动加载规则等。

2. PSR-2: 代码风格指南PSR-2规范描述了PHP代码的一般样式规则,如缩进、行长度、命名约定、代码块间的空格等。

遵循这些规范可以提高代码的可读性和一致性。

3. PSR-3: 日志接口PSR-3规范定义了一套通用的日志接口,使得不同的日志库可以互相兼容。

该规范主要包括日志级别、记录消息和记录上下文等内容。

4. PSR-4: 自动加载规范PSR-4规范指定了类和命名空间之间的映射关系,使得自动加载类变得更加简单和可维护。

该规范要求将类的命名空间与文件路径结构一致。

5. PSR-6: 缓存接口PSR-6规范定义了一套通用的缓存接口,使得不同的缓存库可以互相兼容。

该规范主要包括缓存快照、读写操作和数据过期等内容。

6. PSR-7: HTTP消息接口PSR-7规范定义了一套通用的HTTP消息接口,包括请求和响应的处理、URI解析和文件上传等功能。

该规范使得不同的HTTP库可以互相兼容。

PSR规范的制定和推广对于提高PHP开发人员的编码质量和效率起到了积极的推动作用。

遵循PSR规范可以使代码更易于理解、维护和协作,也有助于提高整个开发团队的编码水平和一致性。

因此,对于PHP开发人员来说,熟悉并遵循PSR 规范是非常重要的。

PHP编码规范

PHP编码规范

PHP编码规范1. 前⾔源码⽂件必须采⽤UTF-8编码,且不得有BOM头,某些历史遗留的GBK模块除外。

编码风格没有太多的好坏之分, 最重要的是风格保持⼀致,编码规范有助于规范我们编码的风格,使代码具有更好的可读性。

PHP在百度内部应⽤得越来越⼴泛,但是却缺乏相应的编码规范⽀持,编码风格百家齐放,不利于我们代码的维护和传承,根据⼤家平时的开发情况,制定了此PHP编码规范。

每项规范前⾯的[强制]代表该规范需要强制执⾏,[建议]代表推荐执⾏但不强制。

注: ⽂中所有的变量名前⾯为了⽅便没有加”$”, ⽰意即可。

本⽂档风格约定部分可能跟你的喜好有冲突,请尽量⽤包容的⼼态来阅读。

有任何问题或建议,欢迎跟我们讨论:2. 排版2.1. [强制][PHP002] 程序块要采⽤缩进风格编写,缩进的空格数建议为4个,单模块内必须统⼀。

解释不同的缩进风格对代码的可读性影响很⼤,以tab为缩进单位在不同的tab step 下可读性也相差很多,所以将缩进定为⼀个soft tab即4个空格,这样在所有环境下缩进都会保持⼀致。

2.2. [建议]关键字与其后的左括号之间有⼀个空格,⽽函数名与左括号之间不应有任何字符包括空格。

解释虽然很多情况下编辑器的highlight已经做了区分,但是从格式上区分关键字和函数适⽤于所有的情况。

⽰例关键字 if (a > b) 函数名 funcA()2.3. [建议]开始的⼤括号位于⼀⾏的末尾,结束的括号位于最末⼀⾏后,且独占⼀⾏。

⾸括号也可另起⼀⾏,但⼀个模块内必须统⼀。

⽰例if (a > b) { }2.4. [强制] [PHP003] if/while等结构体,即使只有⼀⾏,也必须加上花括号,不得写成⼀⾏。

解释这样做可读性更好,并且⽅便修改。

⽰例if (a > b) { a = 1; }2.5. [建议]⼀⾏代码不得超过120个字节,建议控制在80字节内;⼀个函数不得超过500⾏,建议控制在100⾏以内。

Thinkphp编码规范

Thinkphp编码规范

Thinkphp编码规范●统一编码:UTF-8●路径规范●../Public:会被替换成当前项目的公共模板目录通常是/项目目录/Tpl/default/Public/●__PUBLIC__:会被替换成当前网站的公共目录通常是 /Public/●__TMPL__:会替换成项目的模板目录通常是/项目目录/Tpl/default/●__ROOT__:会替换成当前网站的地址(不含域名)●__APP__:会替换成当前项目的URL地址(不含域名)●__URL__:会替换成当前模块的URL地址(不含域名)●__ACTION__:会替换成当前操作的URL地址(不含域名)●__SELF__:会替换成当前的页面URL●●命名规范●类名: 首字母大写其他字母都由小写的单词组成,eg:class IndexAction●接口名: I+名称+Service,eg:interface IBussinessService(如果接口名太长了就不用services)●方法名: 第1个单词的首字母小写,后面单词的首字母大写eg:public function index(){}●方法的参数: 使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字.eg: setCounter($size){}●变量名:变量的名字必须用一个小写字母开头。

后面的单词首字母大写,eg:$user●常量名:所有字母大写,如果有多个字母应该用下划线分开,eg:THINK_PATH●Html文件命名规范●后台增加内容:add.html●后台修改内容:update.html●全部内容列表:list.html●单个内容详细显示:content.html●后台内容管理:admin.html●Lib文件命名规范●Action文件:(名字,首字母大写)+Action eg: IndexAction.class.php●Model文件:(名字,首字母大写)+Model eg:UserModel.class.php●注释规范(我们要严格按照规范完整地写出注释,因为以后要导出的API文档)●PHP代码的注释:1、类(模块)注释:例子:/*** <功能的描述>* @author <作者中文名>* @version 1.0* create Date <创建日期,格式:November 05, 2010>*/eg:/***作用于整站首页栏目和整站首页文章的存取* @author 谭锐* @version 1.0* Create Date November 03, 2010*/2、方法注释:在每个函数或者过程的前面要有必要的注释信息,包括:函数或过程名称;功能描述;输入、输出及返回值说明;调用关系及被调用关系说明等。

php编码规范

php编码规范

php编码规范PHP编码规范是一组约定俗成的规范,用于指导PHP开发者在编写PHP代码时的一些基本规则和最佳实践。

遵循编码规范可以提高代码的可读性、可维护性和可扩展性,提高团队协作效率,减少潜在的BUG。

下面是一个包含大概1000字的PHP编码规范,用于参考:1. 缩进使用4个空格,不要使用制表符。

2. 使用Unix风格的换行符(LF),不使用Windows风格的换行符(CRLF)。

3. 文件名使用小写字母,单词之间使用下划线分隔,如:my_class.php。

4. 类名使用驼峰命名法,首字母大写,如:MyClass。

5. 方法名、变量名使用驼峰命名法,首字母小写,如:myMethod、myVariable。

6. 常量名使用全大写字母,单词之间使用下划线分隔,如:MY_CONSTANT。

7. 代码行长度不超过80个字符。

8. 使用空行将代码块分隔开来,提高可读性。

如:类的方法之间、方法内的逻辑块之间。

9. 使用注释解释代码的用途,特别是复杂的逻辑或处理。

10. 使用类型声明,标明函数的参数和返回值的类型。

如:function myFunction(string $param): int。

11. 尽量避免使用全局变量,尽量使用依赖注入的方式传递参数。

12. 使用命名空间(Namespace)进行代码组织和隔离,避免命名冲突。

13. 使用PHP内建函数时,参数之间用逗号分隔,参数和函数名之间没有空格。

如:strlen($str)。

14. 类的属性和方法的可见性要标明清楚,根据需要使用public、protected、private进行修饰。

15. 使用异常进行错误处理,而不是依赖返回值来判断是否发生错误。

16. 在代码中使用单引号''来表示字符串,除非特殊情况需要使用双引号""。

17. 不要使用eval函数执行动态代码,避免安全风险。

18. 使用PDO或mysqli来处理数据库操作,避免SQL注入和其他安全问题。

psr规范

psr规范

psr规范PSR 规范是 PHP 社区制定的规范和标准,以促进开发人员编写出更具可读性、可维护性和可重用性的 PHP 代码。

PSR 是PHP Standard Recommendation 的缩写,意为 PHP 标准建议。

今天我来详细介绍一下 PSR 规范。

PSR 规范的目标是提供一套统一的规范,使 PHP 代码可以跨不同的项目和开发团队之间进行共享和协作。

这样做有助于提高代码的质量、减少维护成本,并提供一致的开发体验。

PSR 规范分为多个不同的部分,每个部分都涵盖了不同方面的规范。

以下是其中一些重要的部分:1. PSR-1:基本编码规范这个规范定义了 PHP 代码的基本结构和编码风格。

它要求使用 <?php 标记开始 PHP 代码,禁止使用闭合标记 ?>。

此外,还规定了类名使用 StudlyCase 命名法,方法名和属性名使用camelCase 命名法,常量名使用全大写字母和下划线。

此外,还规定了对代码缩进使用四个空格,并要求遵循一些常见的编码约定。

2. PSR-4:自动加载规范这个规范定义了如何组织和加载 PHP 类文件。

它要求将每个命名空间与一个根目录对应起来,类文件名必须与类名一致,并按照目录结构进行存储。

PSR-4 规范简化了代码的自动加载过程,使得在项目中使用类自动加载更加方便和统一。

3. PSR-12:扩展的编码风格规范这个规范扩展了 PSR-1 中的编码风格要求,提供了更详细的编码规范。

它包括对代码缩进、空白行、注释、命名空间、类和方法的结构等方面的具体规定。

PSR-12 旨在进一步统一PHP 代码的编码风格,简化代码的维护和阅读。

除了上述几个主要的规范外,还有一些其他的 PSR 规范,如PSR-2(已废弃,合并到 PSR-12 中)、PSR-3(日志接口)、PSR-6(缓存接口)等。

每个规范都有其特定的目的和规定,开发者可以根据自己的需求选择适合的规范。

遵循 PSR 规范的好处是明显的。

项目开发规范(编码规范、命名规范、安全规范、前端优化、源码提交规范、代码维护规范、产品发布规范)

项目开发规范(编码规范、命名规范、安全规范、前端优化、源码提交规范、代码维护规范、产品发布规范)

项⽬开发规范(编码规范、命名规范、安全规范、前端优化、源码提交规范、代码维护规范、产品发布规范)第⼀节:编码过程的命名约定(编码命名规范)==========================================================================================================================PHP编码规范=============================================================================================================================PSR(PHP Standard Recommendations,PHP标准规范)是由PHP FIG组织制定的PHP规范,是PHP开发的实践标准。

主要包含基础编码规范、编码风格规范、⽇志接⼝规范、缓存接⼝规范、HTTP消息接⼝规范等。

1. 【必须】代码必须使⽤4个空格符⽽不是「Tab 键」进⾏缩进。

使⽤空格⽽不是「tab键缩进」的好处在于,避免在⽐较代码差异、打补丁、重阅代码以及注释时产⽣混淆。

并且,使⽤空格缩进,让对齐变得更⽅便。

2. 【必须】类的属性和⽅法必须添加访问修饰符(private、protected 以及 public),abstract 以及 final 必须声明在访问修饰符之前,⽽static 必须声明在访问修饰符之后。

3. 【必须】PHP所有关键字必须全部⼩写。

常量 true 、false 和 null 也必须全部⼩写。

4. 【不该】类的属性和⽅法不该使⽤下划线作为前缀,来区分是 protected 或 private。

⽬录和⽂件⽬录使⽤⼩写+下划线。

(参考linux⽬录命名,全部⼩写,linux⽬录单词间没有分隔符,如/var/spool/clientqueue,/etc/inittab,/bin/dnsdomainname等)类的⽂件名均以命名空间定义,并且命名空间的路径和类库⽂件所在路径⼀致。

一份比较全面的PHP开发编码规范

一份比较全面的PHP开发编码规范

下面是根据经验整理的PHP编码规,可以用作给大家的例和参考,根据需要进行取舍和修改!目录1 编写目的2 整体要求3 安全规3.1 包含文件3.1.1 命名规则3.1.2 存放规则3.2 安全规则3.3 一些针对PHP的规则3.4 其它处理规则3.4.1 对输入参数值进行转义处理3.4.2 操作大HTML文本4 编码规4.1 命名规4.1.1 变量命名4.1.2 类4.1.3 方法或函数4.1.4 缩写词4.1.5 数据库表名4.1.6 数据库字段4.2 书写规则4.2.1 代码缩进4.2.2 大括号{ }书写规则4.2.3 小括号( )和函数、关键词等4.2.4 =符号书写4.2.5 if else swith for while等书写4.2.6 类的构造函数4.2.7 语句断行, 每行控制在80个字符以4.2.8 不要不可思议的数字4.2.9 true/false和0/1判断4.2.10 避免嵌入式赋值4.2.11 错误返回检测规则4.3 程序注释4.3.1 程序头注释块4.3.2 类的注释4.3.3 函数和方法的注释4.3.4 变量或者语句注释4.4 其他规(建议)4.4.1 php代码标记4.4.2 程序文件名、目录名4.4.3 PHP项目通常的文件目录结构4.4.4 PHP和HTML代码的分离问题4.4.5 PHP项目开发中的程序逻辑结构5 特定环境下PHP编码特殊规5.1 变量定义5.2 引用的使用5.3 变量的输入输出1 编写目的为了更好的提高技术部的工作效率,保证开发的有效性和合理性,并可最大程度的提高程序代码的可读性和可重复利用性,指定此规。

开发团队根据自己的实际情况,可以对本规进行补充或裁减。

2 整体要求技术部php开发规将参照PEAR的规,基本采用PEAR指定的规,在其基础上增加、修改或删除部分适合具体开发环境的规。

本规只针对PHP开发过程中编码的规,对于PHP开发项目中文件、目录、数据库等方面的规,将不重点涉与。

PHP编码规范

PHP编码规范

PHP 编码规范一、文件格式1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 "?>" 。

这是为了防止多余的空格或者其它字符影响到代码。

例如:<?php$foo = 'foo';2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。

例如:if (1 == $x) {$indented_code = 1;if (1 == $new_line) {$more_indented_code = 1;}}3. 变量赋值必须保持相等间距和排列。

例如:$variable = 'demo';$var = 'demo2';4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。

因为 linux 读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。

这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。

5. 每行结尾不允许有多余的空格。

二、命名约定1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php 。

2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀,且文件名命名使用小写字母和下划线的方式,多个单词之间以下划线分隔,例如config.inc.php , common.php,install_function.php 。

3. 确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的。

4. 类名和文件名一致(包括上面说的大小写一致),且类名只允许字母,例如 UserAction类的文件命名是UserAction.class.php, InfoModel类的文件名是InfoModel.class.php 。

06-PHP编码规范

06-PHP编码规范

前言: (2)第 1 章排版规则 (2)1.1 缩进 (2)1.2 空格规则 (2)第 2 章命名规范 (4)2.1 变量命名 (4)2.2 命名定义/ 全局常量 (6)2.3 类命名 (6)2.4 缩写词不要全部使用大写字母 (9)2.5 函数命名 (9)第 3 章版式规则 (10)3.1 语义分隔 (10)3.2 圆括号规则 (10)3.3 方法/函数 (10)3.4 关键字 (11)第 4 章编程规范 (12)4.1 数组定义规则 (13)4.2 不要采用缺省方法测试非零值 (13)4.3 通常避免嵌入式的赋值 (14)4.4 布尔逻辑类型 (14)4.5 别在对象构造函数中做实际的工作 (14)4.6 switch 格式 (15)4.7 Continue 和 Break (15)4.8 ? : (16)4.9 其他杂项 (17)4.10 SQL 规则 (18)第 5 章注释规则 (19)5.1 一般规则 (19)5.2 方法/函数注释 (19)5.3 类注释 (19)5.4 记录所有的空语句 (20)5.5 用 if (0)来注释外部代码块 (20)5.6 版权信息 (20)前言:所有的代码都要变成可供他人容易阅读的良好的代码书写习惯 + 良好的注释习惯 + PhpDocumentor = 程序说明书为了更好的编码,特整理了这一份文档,在整理当中也学习巩固了不少知识,也遇到很多感到迷惑的地方,还需要 Exp 的增长才能明白。

因为 PHP 的函数大小写不敏感特性,完全可以在调用库函数的时候使用自己的大小写规则调用而不会遇到任何问题。

另外没有一成不变的规则,也有很多规则没有定义到的地方。

很多时候可能需要自己来判断如何书写才能让读者更直观的认识程序,本着能清晰语法,而不是混淆语法的书写原则就好。

第 1 章排版规则1.1 缩进对齐只使用空格键,不使用 TAB 键。

缩进的单位为 4 个空格。

说明: 以免用不同的编辑器阅读程序时,因 TAB 键所设置的空格数目不同而造成程序布局变化。

PHP程序编码规范

PHP程序编码规范

.程序编码规范1、基本的编码规范,与国际接轨,见附录The PHP Coding Standard (中文版| 英文版) ;2、新的程序/项目的服务器配置中,php.ini关闭error_reporting, register_globals, magic_gpc, session.auto_start,需要查看错误信息的在程序中设置,但正式上线的项目要保证及时关闭;3、新的程序/项目都采用UTF-8编码,包括数据库、程序(无BOM)和页面(无BOM)等;4、新的程序/项目都使用公司开发框架SimplePHP;5、新的大中型程序/站点都要经过压力测试调整改进后上线;6、使用统一的IDE,保证团队的编码格式和一些细节的统一,目前公司统一使用;ZendStudio/Zend Studio for Eclipse7、原则上不允许修改Simple框架核心代码,即SimplePHP目录下的所有文件,如有需要,请通知框架维护升级人员评估处理,Simple框架在下一步计划中将大幅度调整改进,以满足开发需求;8、目录名只能使用英文字母加阿拉伯数字及下划线的组合字符串,而一些重要的并且用户能直接访问到的后台管理目录不能直接使用像admin,tool之类的常用单词来命名。

9、特定目录统一命名:模板目录views,语言包目录langs,配制目录config。

目录名统一全小写命名。

10、文件名(包括成生的静态页面,缓存等文件)尽量使用小写字母命名,必要时用下划线连接,但不能出现空格。

框架控制器文件必须保证第一个字母为大写,其它均为小写,以保证大小写链接均可正常使用;11、尽量使用公共的类库(公共的类库收集整理在进行中,并且将不断补充完善);12、站点/项目主程要负责编写、补充站点/项目文档(包括站点/项目说明,系统架构说明,目录/文件结构说明,接口说明,更新历史,手册文档);开发文档统一存放在项目的根目录(不是WEB根目录)下doc目录的dev目录。

PHP基础-04 编码规范 PHP实训教程(安博教育)

PHP基础-04 编码规范 PHP实训教程(安博教育)

2 代码布局
较长的语句要分成多行书写 一行程序需小于80字符
较长的语句要分成多行书写,长表达式要在低优先级 操作符处划分新行,操作符放在新行之首,划分出的 新行要进行适当的缩进,使排版整齐,语句可读。
2 代码布局
断行的例子
$perm_count_msg->len = NO7_TO_STAT_PERM_COUNT_LEN
3 注释
结构体声明
代码中代表结构体的数组变量,要提前声明。 示例: function example_fun(){
$student = array( 'name' => '小明', //名称 'addr' => '详细地址', //地址 'sex' => '男', //性别 'city' => '上海' //城市
) }
3 注释
注释以中文为主
注释应考虑程序易读及外观排版的因素,使用的语言若是中、 英兼有的,建议多使用中文,除非能用非常流利准确的英文表 达。
4 命名约定
禁止拼音命名法
代码中禁止用拼音命名法。
变量命名
变量名应当全部小写,并且词语之间以单个下划线分隔。 名称应当是描述性的,并且简明
例如: $current_user 是正确的, 但是 $currentuser 和 $currentUser 就不正确。
谁也不愿意看到挤在一堆的无序的代码。我们在写代码的时候总 是会利用一些空行来增加代码可读性。合理的利用空格来区分代 码段会使代码的逻辑思路更加明确。我们强行规定的空行有以下 两种情况: 1、<?php 之后必须有且只有 个空行 、 之后必须有且只有1个空行 2、?> 之前必须有且只有1个空行 3、两个函数之间必须有1个空行。 4、return、die、exit之前如果有其他语句的情况下应加上一个空行。 在代码中我们不允许在行尾有多余的空格。

PHP编码规范文档

PHP编码规范文档

PHP编码规范目录1目的 (2)2使用角色 (2)3适用范围 (2)4文档格式定义 (2)5命名 (2)5.1命名的统一原则 (2)5.2常量命名 (2)5.3变量命名 (2)5.4子程序命名 (3)5.5接口命名 (3)5.6类命名 (3)5.7网站默认首页命名 (4)5.8文件命名 (4)5.9数据库方面命名 (4)6注释 (4)6.1总原则 (4)6.2规范 (4)6.2.1类的注释 (4)6.2.2接口的注释 (5)6.2.3子程序的注释 (5)7代码书写风格 (6)7.1总原则 (6)7.2控制结构 (7)7.3单条语句 (7)7.4注释 (8)7.5子程序 (9)7.6类 (9)8PHP性能规范 (9)1目的提高开发效率;降低程序的复杂度;提高代码可读性。

2使用角色3适用范围所有的PHP程序开发人员,PHP代码质量检测人员4文档格式定义✧实例:双标识):用空行进行段落分隔(建议)。

5命名5.1命名的统一原则反映现实世界的问题5.2常量命名✧具名常量是根据所代表的抽象实体而不是它所代表的数字来命名✧全部大写,使用“_”分隔单词5.3✧全局变量以“g_”开头,非全局变量不要以“g_”开头✧✧充分描述此变量的用途✧所有的“临时”变量都重新命以更有意义的名字✧✧✧不允许在命名的结尾使用下划线✧不要出现单字母的变量,如i,j,k(只有在控制循环数时且循环代码条数在3条以内,才可以考虑使用)✧循环下标的名字要有意义(如果循环的长度超出了一两行代码或者出现了嵌套循环,那么就应该是i、j或者k以外的其他名字)✧✧用count或者total来代表总数,用index来指代某个特定成员。

名字中用count或者index来代替num把限定词放在名字最后的例外,num已经是约定俗成的。

num放在变量名的开始位置代表一个总数:numCustomers表示的是员工的总数。

num放在变量名的结束位置代表一个下标:customerNum表示的是当前员工的序号。

PHP编码规范

PHP编码规范

引言本规范由编程原则组成,融合并提炼了开发人员长时间积累下来的成熟经验,意在帮助形成良好一致的编程风格。

以达到事半功倍的效果,如果有需要本文档会不定期更新。

适用范围如无特殊说明,以下规则要求完全适用于公司PHP项目。

一、代码标记<?php…所有php页面都必须以此格式来书写代码,结尾处不写 ?>二、注释所有函数和类都需要申明注释,用于说明此函数或类的功能。

格式如下:/*** Description** @author jaikuai* @param* @return*/对于返回类型是数组的,需要在注释中描述清楚此数组的结构信息代码添加简短的解释性内容,请使用 C++ 样式的注释“//”三、书写规则1)缩进每个缩进的单位约定是一个TAB(4个空白字符宽度),需每个参与项目的开发人员在编辑器(UltraEdit、EditPlus、Zend Studio等)中进行强制设定,以防在编写代码时遗忘而造成格式上的不规范。

本缩进规范适用于PHP、JavaScript中的函数、类、逻辑结构、循环等。

2)大括号{}、if和switch以下是符合上述规范的例子:if($condition){switch ($var){}}else{echo ‘’;}3)运算符、小括号、空格、关键词和函数每个运算符与两边参与运算的值或表达式中间要有一个空格左括号“(”应和函数关键词紧贴在一起,除此以外应当使用空格将“(”同前面内容分开;右括号“)”除后面是“)”或者“.”以外,其他一律用空格隔开它们;除字符串中特意需要,一般情况下,在程序以及HTML中不出现两个连续的空格;根据上述原则,以下举例说明正确的书写格式:$result = (($a + 1) * 3 / 2 + $num)) . ’Test’;$condition ? func1($var) : func2($var);$condition ? $long_statement: $another_long_statement;4)函数定义●函数的定义必须放在类中,不允许定义全局空间函数,函数名称具有此函数实现功能的定义,不允许出现无意义的函数名,采用驼峰命名法●函数定义中的左小括号,与函数名紧挨,中间无需空格;●具有默认值的参数应该位于参数列表的后面;●函数调用与定义的时候参数与参数之间加入一个空格;●必须仔细检查并切实杜绝函数起始缩进位置与结束缩进位置不同的现象。

5.PHP编码规范

5.PHP编码规范

无线-手机微博-架构组 编码规范(PHP)目录1 1.1 1.2 2 2.1 2.2 2.3 2.4 2.5 文件 ......................................................................................................................................... 1 文件名 ................................................................ 1 格式 .................................................................. 2 排版 ......................................................................................................................................... 2 空行 .................................................................. 2 缩进 .................................................................. 3 空格 .................................................................. 3 换行 .................................................................. 5 对齐 .................................................................. 72.5.1 2.5.23 3.1 3.2 4 4.1 4.2 4.3 4.4 4.5 5 5.1 5.2 5.3 5.4数组................................................................................................................... 7 双元运算符 ....................................................................................................... 8命名约定 ................................................................................................................................. 8 面向过程 .............................................................. 8 面向对象 .............................................................. 9 注释规范 ............................................................................................................................... 11 常用标记 ............................................................. 12 文件注释 ............................................................. 12 函数注释 ............................................................. 13 类的属性注释 ......................................................... 13 变量注释 ............................................................. 13 通用规定 ............................................................................................................................... 13 引号 ................................................................. 13 递增/递减运算符 ...................................................... 14 变量 ................................................................. 14 循环条件值 ........................................................... 15文档格式模板1 文件1.1 文件名1) 文件名一律小写,合成名词采用下划线分离,如:  jump_link.php  sample_feedback.php  sample_push.php 2) 文件名中标识类型,如:  serialize.class.php 类文件  exception.class.php 类文件  article.conf.php 配置文件  channel.model.php 模块文件  core.inc.php 包含文件 3) 模板文件已.tpl 结尾,如:  index.tpl错误的命名方式如下:  jumpLink.php  samplefeedback.php  SamplePush.php  serialize.php 类文件  exception.php 类文件  article.php 配置文件 channel.php 模块文件  core.php 包含文件1文档格式模板1.2格式1) 文件统一使用 UTF8 编码; 2) 文件开头不得有 BOM, 类似 Notepad 这样的编辑器在保存时默认会含有 BOM,建议使用 Editplus、UltraEditor 和 Eclipse 等编辑器进行编辑; 3) PHP 代码文件开头<?php 必须是从第一行第一个字符开始, 不得使用<?; 4) 对于只包含有 PHP 代码而无别的代码的文件,结束标志“?>”不允许存 在的; 5) 请将编辑器设置对所有程序使用 UNIX 格式保存,不要使用 Win32 或者 Mac 的格式。

PHP编码规范整理,很全很实用(图文版)

PHP编码规范整理,很全很实用(图文版)

PHP编码规范整理,很全很实⽤(图⽂版)有⼀个组织叫做“php互操作性框架制定⼩组”,这个⼩组的主要⽬的是制定各种PHP编码规范的,下⾯就是我根据⼩组提供的建议整理的⼀些常⽤的编码规范。

PSR-1:1、PHP代码⽂件必须以<?php 或<?=标签开始。

2、PHP代码必须以不带BOM的UTF-8编码。

3、类名必须遵循⼤驼峰命名规范。

(⾸字母⼤写的驼峰命名)4、⽅法名必须遵循⼩驼峰命名规范。

(⾸字母⼩写的驼峰命名)5、类中的常量所有字母必须⼤写,单词之间使⽤_(下划线)分割。

6、类中的属性可以使⽤⼤驼峰、⼩驼峰、下划线分割等,不做强制规范。

PRS-2:1、代码必须使⽤4个空格⽽⾮tab键缩进。

(使⽤空格⽽不是tab键缩进的好处在于,避免在⽐较代码差异、打补丁、重阅代码以及注释时产⽣混淆。

并且,使⽤空格缩进,让对齐变得更⽅便。

)2、代码每⾏建议在80个字符之内,⼀定不能超过120个字符。

3、每个namespace命名空间声明语句和use声明语句块后边必须插⼊⼀个空⽩⾏,并且use必须在namespace之后。

4、类的⼀对花括号{}必须⾃成⼀⾏。

5、⽅法的⼀对花括号{}必须⾃成⼀⾏。

6、类的属性和⽅法必须添加访问修饰符(private、public、protected),abstarct和final必须声明在访问修饰符之前,⽽static必须声明在访问修饰符之后。

7、控制结构(if、while等结构语句)的关键字后必须要有⼀个空格,⽽调⽤函数或⽅法⼀定不能有。

8、控制结构的({)必须写在声明的同⼀⾏,⽽(})必须单成⼀⾏。

9、控制结构的左括号后和右括号前⼀定不能有空格。

10、所有php⽂件必须以⼀个空⽩⾏作为结束。

11、纯php代码⽂件必须省略最后的?>结束标签。

12、php所有的关键字必须⼩写,常量true、false、null也必须⼩写。

13、⽅法的参数中,每个参数后⾯必须要有⼀个空格,⽽前⾯⼀定不能有空格。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PHP项目编码规范
排版规范
1、程序块采用缩进风格,缩进空格为4
2、关键字与其后的左括号之间有一个空格,而函数名与左括号之间不应有任何字符包括空格。

3、开始的大括号位于下一行的开始,结束的括号位于最末一行后,且都是独占一行。

4、if/while等结构体,即使只有一行,也必须加上左右花括号,不允许写成一行。

5、函数名与其后的左括号之间不应有任何空格。

函数调用的左括号与其第一个参数之间不应有任何空格。

最后一个参数与右括号之间不应有任何空格。

参数列表的逗号后面应有一个空格。

6、尽量减少if的层级嵌套。

(尽量保证在2层嵌套以内)
7、过长的表达式应另起一行。

If语句的条件若较多较长,应折行,且新行以逻辑运算符起始,与第一行if左括号后的第一个字符对齐。

折行后,每行条件具有独立而明确的语义。

8、多行的“=”可能的话,尽量对齐
9、Switch语句中每个case的break,必须和case间,保持4个空格的缩进
10、初始化array如果采用多行结构时,数据项部分需要缩进,且最后一个数据项后面的逗号不可省略
命名规范
1、全局变量以g_开头。

2、常量命名全部使用大写字符,单词之间以’_’链接
3、对于代码中的常量(尤其是魔法数字),必须用静态类中的常量来表示。

不允许直接写
在代码中。

4、关键字true,false,null必须使用小写。

5、私有函数命名需要加上’_’前缀,以及第一个单词首字母小写。

6、类的成员方法命名采用驼峰式命名,动宾结构(如:getName())。

普通方法采用过程
式函数风格命名
7、文件命名使用小写字母,单词之间以’_’连接。

8、类名以大写字母开头,每个单词的首字母大写。

抽象类与接口,以I字母开头。

父类以
Base作为类名的前缀。

注释规范
函数以及类的成员变量,视情况加上必要的注释。

可以是非文档性的注释,注意使用大白话描述。

编码原则
1、对于函数返回值的判断,特别是true/false,用===/!==来判断。

2、对于值的判断,变量需放在符号右边,值放在左边。

3、生成一个对象时,必须使用new ClassName()的方式,不能使用new ClassName
4、所有文件路径都需要利用框架中提供的QFrameConfig来写成绝对路径
5、对于长时间运行的脚本并且含有占用内存较大的变量,使用完后,必须先赋值null,
再unset掉,避免内存占用过多。

6、对于系统操作,尽可能避免使用exec等函数来调用shell命令。

7、除非特殊情况,否则不允许使用require和include,而使用对应的require_once
和include_once。

8、预定义变量一律使用短格式,即:$_POST, $_GET, $_SERVER, $_ENV, $GLOBALS,
$_COOKIE, $_SESSION, $_REQUEST, $_FILES等,不再使用长格式:$_HTTP_POST_VARS, $_HTTP_GET_VARS。

9、尽量不要再PHP代码中出现HTML标签,将模板和代码分离。

10、前端访问必须有日志记录
11、数据库读写操作必须有日志记录
12、对文件更新操作,必须先写到一个临时文件中,然后用rename/mv操作。

13、字符串尽量用’’而不是””进行引用。

14、函数允许使用默认参数,但默认参数需要放到参数列表最后面。

相关文档
最新文档