PHP编码规范
-
文件命名:
-
文件名由字母、数字、下划线组成,不要包含其他特殊字符;
-
注意区分文件名中各个字母的大小写情况;
-
配置文件按照 "inc.模块.php" 的格式,放置config目录中;
-
类文件按照 ”class.类名.php" 的格式,放置include目录中;
-
函数文件按照 ”func.模块.php" 的格式,放置include & api目录中;
-
模板文件按照 "tpl.页面.php" 的格式,放置template目录中;
-
app文件按照 "app.模块.php" 的格式,放置app目录中;
-
-
全局变量:
-
全局变量应该带前缀 'g';
-
各单词首字母大写,能体现该变量作用;
-
理由:知道一个变量的作用域和变量作用是非常重要;
-
例如:$gIsLogin = is_login(); / $gLoginId = login_id();
-
-
全局常量:
-
各个字母全部大写;
-
各单词间用 '_' 作为分界;
-
理由:这是命名全局变量的传统。要注意不要与其它的定义相冲突;
-
例如:define("A_GLOBAL_CONSTANT", "Hello world");
-
-
函数命名:
-
函数命名采用C GNU 的惯例,所有的字母使用小写字母,试用 '_' 分割单词。
-
理由:这样可以更易于区分相关联的类名。
-
例如:function some_bloody_function($userName, $useAge) { ... }
-
-
函数参数命名:
-
首字母小写;
-
其他每个单词首字母大写;
-
-
过程变量命名:
-
所有字母都使用小写;
-
各单词间用 '_' 作为分界;
-
-
类——命名:
-
使用大写字母作为词的分隔,其他的字母均使用小写;
-
名字的首字母使用大写;
-
不使用下划线('_');
-
例如:class NameOneTwo / class Name
-
-
类——属性命名:
-
首字母小写;
-
其他各单词首字母大写;
-
-
类——方法命名:
-
命名格式与类命名相同;
-
注意后缀名和前缀名也是有作用的;
-
-
类——方法中参数命名:
-
第一个字符使用小写字母。
-
在首字符后的所有字都按照类命名规则首字符大写;
-
-
缩写原则:
-
缩写词不要全部使用大写字母;
-
-
排版——if 结构:
-
if 结构在程序当中使用量是最多的语法结构,elseif 使用次数不要超过两次,如果需要更多的话,请换用switch结构。并在各个case处标明注释信息;
-
-
排版——大括号:
-
大括号放置规则采取传统的UNIX的括号规则,首括号与关键词同行并保持一个空格的间隔,尾括号与关键字同列
-
-
排版——小括号:
-
小括号与内部的表达式应保持一个空格的间隔;
-
小括号与其他运算符、表达式保持一个空格的间隔;
-
-
排版——缩进/制表符/空格:
-
使用制表符缩进代码,使代码的可读性进一步提高;
-
制表符长度应在4个空格的长度;
-
-
排版——代码注释:
-
代码注释试用 "//",多行试用 "/**/",少用 "#";
-
在被注释代码块附近显著表明修改人,修改时间,修改原因;
-
-
注释信息:
-
注释试用phpDoc格式;
-
在每个项目当中所有函数、类以及类属性、方法都要有足够的注释信息;
-
理由(这样做主要有四大优点):
-
某些编辑器下在调用相关函数或方法时会自动显示这些注释信息;
-
有助于浏览代码,帮助回忆程序思想;
-
可以通过相关工具生成项目文档,供日后参考使用;
-
大大增加项目交接效率;
-
-
-
注释信息——函数:
-
在函数上方编写函数功能,参数以及返回值的类型和值的相关信息;
-
-
注释信息——类:
-
类属性的注释;
-
类的注释、主要包括功能、试用方法代码展示;
-
对于类方法的注释也按照上面的格式添加;
-
-
其他注意事项——引号:
-
字符串应当尽可能用单引号定义以提高速度;在变量较多时注意使用sprintf()
-