为了提高工作效率,保证开发的有效性和合理性,并最大程度提高程序代码的可读性和可重复利用性,提高沟通效率,需要一份代码编写规范。让大家养成良好的代码编写习惯,同时减少代码中的bug。
CleverCode整理了一些规范。本规范包含PHP开发时程序编码中命名规范、代码缩进规则、控制结构、函数调用、函数定义、注释、包含代码、PHP标记、常最命名等方面的规则。
1 文件格式
1.1 文件标记
所有PHP文件,其代码标记均使用完整PHP标签,不建议使用短标签,例如:
<?php
//推荐
echo 'hello world';
?>
<?
//短标签格式不推荐
echo ' hello world ';
?>
1) 使用短标签格式容易和XML混淆,并且不是所有PHP版本和服务器都默认支持或打开短标签选项(从PHP5.4开始,php.ini中的短标签选项不影响短标签的使用)。对于只含有PHP代码的文件,将在文件结尾处忽略?>。这是为了防止多余空格或者其他字符影响到代码。
2)实际上这个问题只有在不开启压缩或缓存输出时才会出现,例如:
php.ini-禁止压缩输出及缓存输出
zlib.output_conpression = off
output_buffering = off
foo.php,注意这个时候有一些空格或换行符掉在了之后,当然这在页面上是看不
到的。
<?php
$foo= 'foo';
?>
index.php,在包含foo.php的同时,实际上已经输出一些空格或换行了。
<?php
include 'foo.php';
session_start();
?>
这时将看到一个警告(warning):“...Cannotsendsessioncachelimiter-headersalreadysent...”
1.2 文件和目录命名
程序文件名和目录名均采用有意义的英文命名,不使用拼音或无意义的字母,只允许出现字母、数字、下画线和中画线字符,同时必须以“.php”结尾(模板文件除外)。
//类统一采用
DemoTest.php
2 命名规范
2.1 变量命名
PHP中的变量用一个美元符号后面跟变量名表示。变量名区分大小写。一个有效变景名由字母或者下画线开头,后面跟任意数量的字母、数字、下画线。正常的正则表达式将表述为:[a-zA-Z_\x7f-\xff][a-zA-ZO-9_'x7f-\xff],不应该在变量中使用中文等非ASCII字符。
2.1.1 程序整体
程序整体以驼峰法命名,以小写字母开始,同时命名要有意义,如:
function displayName($name){
echo $name;
}