文件的命名
类文件的命名必须以大写字母开头,其他文件(配置文件,视图,一般的脚本文件等)的命名是全小写。
类文件的名称必须和类的名称保持一致,例如,如果你有一个类名为Myclass, 那么文件名应该是Myclass.php。
类和方法的命名
类名必须以大写字母开头,多个单词之间使用下划线分割,不要使用驼峰命名法。
正确的:
<pre>class Super_class
</pre>
类的方法应该使用全小写,并且应该明确指出该方法的功能,最好包含一个动词。 避免使用冗长的名称,多个单词之间使用下划线分割。
正确的:
<pre><code>function get_file_properties() // descriptive, underscore separator, and all lowercase letters</code></pre>
变量的命名
变量的命名规则和类方法的命名规则非常接近,使用全小写,使用下划线分割, 并且应该明确指出该变量的用途。非常短的无意义的变量只应该在 for 循环中作为迭代器使用。
正确的:
for ($j = 0; $j < 10; $j++)
$str
$buffer
$group_id
$last_city
常量
常量遵循和变量一样的命名规则,除了它需要全部大写。尽量使用 CodeIgniter 已经定义好的常量, 如:SLASH、LD、RD、PATH_CACHE 等。
正确的:
MY_CONSTANT
NEWLINE
SUPER_CLASS_VERSION
$str = str_replace(LD.'foo'.RD, 'bar', $str);
逻辑操作符
不要使用 ||操作符,它在一些设备上看不清(可能看起来像是数字 11), 使用 &&操作符比使用 AND要好一点,但是两者都可以接受。 另外,在 !操作符的前后都应该加一个空格。
错误的:
if ($foo || $bar)
if ($foo AND $bar) // okay but not recommended for common syntax highlighting applications
if (!$foo)
if (! is_array($foo))
正确的:
if ($foo OR $bar)
if ($foo && $bar) // recommended
if ( ! $foo)
if ( ! is_array($foo))
代码缩进
使用 Allman 代码缩进风格。除了类的定义之外,其他的所有大括号都应该独占一行, 并且和它对应的控制语句保持相同的缩进。
中括号和小括号内的空格
一般情况下,使用中括号和小括号的时候不应该使用多余的空格。 唯一的例外是,在那些接受一个括号和参数的 PHP 的控制结构(declare、do-while、elseif、for、 foreach、if、switch、while)的后面应该加一个空格,这样做可以和函数区分开来,并增加可读性。
错误的:
$arr[ $foo ] = 'foo';
正确的:
$arr[$foo] = 'foo'; // no spaces around array keys
错误的:
function foo ( $bar )
{
}```
正确的:
function foo($bar) // no spaces around parenthesis in function declarations
{
}```
错误的:
foreach( $query->result() as $row )```
正确的:
foreach ($query->result() as $row) // single space following PHP control structures, but not in interior parenthesis
##私有方法和变量
那些只能在内部访问的方法和变量,例如供共有方法使用的那些工具方法或辅助函数,应该以下划线开头。
public function convert_text()
private function _convert_text()
##字符串
字符串使用单引号引起来,当字符串中有变量时使用双引号,并且使用大括号将变量包起来。 另外,当字符串中有单引号时,也应该使用双引号,这样就不用使用转义符。
**错误的**:
"My String" // no variable parsing, so no use for double quotes
"My string $foo" // needs braces
'SELECT foo FROM bar WHERE baz = 'bag'' // ugly
**正确的**:
'My String'
"My string {$foo}"
"SELECT foo FROM bar WHERE baz = 'bag'"