PHP 程序编码规范
1 命名规范
制定统一的命名规范对于项目开发来说非常重要,不但可以养成程序员一个良好的开发习 惯,还能增加程序的可读性,可移植性和重用性,还能很好的提高项目开发的效率. 1.1 变量命名 变量命名分为普通变量,静态变量,局部变量,全局变量,Session 变量等方面的命名规则. 普通变量命名遵循以下规则: 所有字母都使用小写; 对于一个变量使用多个单词的,使用'_'作为每个词的间隔. 例如:$base_dir,$red_rose_price 等 静态变量命名遵循以下规则: 静态变量使用小写的 s_开头 开头; 开头 静态变量所有字母都使用小写; 多个单词组成的变量名使用'_'作为每个词的间隔. 例子:$s_base_dir,$s_red_rose_prise 等. 局部变量命名遵循以下规则: 所有字母使用小写; 变量使用'_'开头 ' '开头; 多个单词组成的局部变量名使用'_'作为每个词间的间隔. 例子:$_base_dir,$_red_rose_price 等. 全局变量应该带前缀'g' 带前缀' ' ,知道一个变量的作用域是非常重要的. 带前缀 例如:global $gLOG_LEVEL; 全局变量命名遵循以下规则: 所有字母使用大写 全局变量多个单词间使用'_'作为间隔. 例子:$gBASE_DIR,$gRED_ROSE_PRICE 等. session 变量命名遵循以下规则: 所有字母使用大写; session 变量名使用'S_'开头; 多个单词间使用'_'间隔. 例子:$S_BASE_DIR,$S_RED_ROSE_PRICE 等.
1
1.2 类 PHP 中类命名遵循以下规则: 以大写字母开头; 多个单词组成的变量名,单词之间不用间隔,各个单词首字母大写. 例子:class MyClass 或 class DbOracle 等. 1.3 属性 属性命名应该以字符'm'为前缀. 前缀'm'后采用于类命名一致的规则. 'm'总是在名字的开头起修饰作用,就像以'r'开头表示引用一样. 如:mVarAbc; 1.4 方法 方法命名遵循以下规则: 首字母小写; 多个单词间不使用间隔,除第一个单词外,其他单词首字母大写. 例子:function myFunction ()或 function myDbOracle ()等. 1.5 函数
函数名字采用 C GNU 的惯例,所有的字母使用小写字母,使用'_'分割单词.一组协同的函数有统一的前 缀.
function some_bloody_function()
1.6 缩写词 当变量名或者其他命名中遇到缩写词时, 参照具体的命名规则, 而不采用缩写词原来的全部 大写的方式. 例子:function myPear(不是 myPEAR) functio getHtmlSource(不是 getHTMLSource) . 1.7 数据库表名 数据库表名命名遵循以下规范: 表名均使用小写字母; 对于普通数据表,使用_t 结尾; 对于视图,使用_v 结尾; 对于多个单词组成的表名,使用_间隔; 例子:user_info_t 和 book_store_v 等 1.8 数据库字段 数据库字段命名遵循以下规范: 全部使用小写; 多个单词间使用_间隔. 例子:user_name,rose_price 等.
2 书写规则
书写规则是指在编写 PHP 程序时,代码书写的规则,包括缩进,结构控制等方面规范:
2
2
.1 代码缩进 在书写代码的时候,必须注意代码的缩进规则,我们规定代码缩进规则如下: 使用 4 个空格作为缩进,而不使用 tab 缩进.以下为 Editplus 中的设置方法:
2.2 大括号 }书写规则 大括号{ 书写规则 在程序中进行结构控制代码编写,如 if,for,while,switch 等结构,大括号传统的有两种 书写习惯,分别如下: a.{直接跟在控制语句之后,不换行,如 for ($i=0;$i<$count;$i++) { echo "test"; } b.{在控制语句下一行,如 for($i=0;$i<$count;$i++) { echo "test"; } 其中,a 是 PEAR 建议的方式,但是从实际书写中来讲,这并不影响程序的规范和影响用 phpdoc 实现
文档,所以可以根据个人习惯来采用上面的两种方式,但是要求在同一个程序 中,只使用其中一种,以免造成阅读的不方便. 2.3 小括号 )和函数,关键词等 小括号( 和函数 和函数, 小括号,关键词和函数遵循以下规则: 不要把小括号和关键词紧贴在一起,要用一个空格间隔;如 if ( $a<$b ); 小括号和函数名中间没有空格;如$test = date("ymdhis"); 除非必要,不要在 Return 返回语