PHP编码规范文档.docVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
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 控制结构 6 7.3 单条语句 7 7.4 注释 8 7.5 子程序 8 7.6 类 9 8 PHP性能规范 9 目的 提高开发效率;降低程序的复杂度;提高代码可读性。 使用角色 适用范围 所有的PHP程序开发人员,PHP代码质量检测人员 文档格式定义 实例: 以此背景色显示的表格内容 建议规范,如下形式的语句为建议性的规范,不强制要求(包括字体颜色与“(建议)”双标识): 用空行进行段落分隔(建议)。 命名 命名的统一原则 反映现实世界的问题 常量命名 具名常量是根据所代表的抽象实体而不是它所代表的数字来命名 全部大写,使用“_” 分隔单词 例子: define(CMS_ROOT, dirname(__FILE__)); 变量命名 全局变量以“g_”开头,非全局变量不要以“g_”开头 例子: $g_staticDel $memberCount 变量名反映了现实世界的问题 充分描述此变量的用途 所有的“临时”变量都重新命以更有意义的名字 例子: $discriminant = sqrt( pow( b, 2 ) - 4*a*c ); $root[0] = ( -b + $discriminant ) / ( 2*a ); $root[1] = ( -b - $discriminant ) / ( 2*a ); 以小写字母开头,从第二个单词开始,每个单词的第一个字母大写,其余小写 例子: $memberIndex 避免出现字母完全相同,仅大小写不同的命名 不允许在命名的结尾使用下划线 不要出现单字母的变量,如i,j,k(只有在控制循环数时且循环代码条数在3条以内,才可以考虑使用) 循环下标的名字要有意义(如果循环的长度超出了一两行代码或者出现了嵌套循环,那么就应该是i、j或者k以外的其他名字) 例子: for ( $teamIndex = 0; $teamIndex $teamCount; $teamIndex++ ) { for ($eventIndex = 0; $eventIndex $eventCount[$teamIndex]; $eventIndex++ ) { $score[ $teamIndex ][ $eventIndex ] = 0; } } 变量中不要出现数字 用count或者total来代表总数,用index来指代某个特定成员。名字中用count或者index来代替num 把限定词放在名字最后的例外,num已经是约定俗成的。num放在变量名的开始位置代表一个总数:numCustomers表示的是员工的总数。num放在变量名的结束位置代表一个下标:customerNum表示的是当前员工的序号。通过numCustomers最后代表复数的s也能够看出这两种应用之间的区别。然而,由于这样的使用num常常会带来麻烦,因此可能最好的办法是避开这些问题,用count或者total来代表员工的总数,用index来指代某个特定的员工。这样,customerCount就代表员工的总数,customerIndex代表某个特定的员工。 如果有计算限定符,把限定词加到名字的最后。(建议) 优点:保证变量的主要含义部分位于最前面,这样这一部分就可以显得最为突出,并会被首先阅读到。其次,避免同时在程序中使用tatalRevenue和revenueTotal(总收入)而产生歧义。(建议) 例子: $revenueTotal = 0;//总收入 $expenseTotal = 0;//总支出 $revenueAverage = 0;//平均收入 $expenseAverage = 0;//平均支出 子程序命名 第一个单词小写,后面的单词第一个字母大写 不要仅通过数字来形成不同的子程序名字 第一个单词必须是动词,使函数的意义清晰明了,例如:openAccount() 存取对象的子程序使用setXXX()和getXXX()函数形式 例子: getFirstName(); setFirstName($firstName); 访问布尔类型的子程序可以使用isXXX()函数 例子: //以下都是比较好的命名:

文档评论(0)

18273502 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档