记录分享每一点进步和成长

一、文件格式

1. 对于只含有php代码的文件,我们将在文件结尾处忽略掉"?>"。这是为了防止多余的空格或者其它字符影响到代码。例如:<?php$foo=’foo’;2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。例如:if(1==$x){ $indented_code=1; if(1==$new_line){ $more_indented_code=1; }}3. 变量赋值必须保持相等间距和排列。例如:$variable=’demo’;$var =’demo2′;4. 每行代码长度应控制在80个字符以内,最长不超过120个字符。因为linux读入文件一般以80列为单位,就是说如果一行代码超过80个字符,那么系统将为此付出额外操作指令。这个虽然看起来是小问题,但是对于追求完美的程序员来说也是值得注意并遵守的规范。5. 每行结尾不允许有多余的空格。

二、命名约定

1. 类文件都是以“.class.php“为后缀,且类文件名只允许字母,使用驼峰法命名,并且首字母大写,例如:DbMysql.class.php。2. 配置和函数等其他类库文件之外的文件一般是分别以“.inc.php“和”.php“为后缀,且文件名命名使用小写字母和下划线的方式,多个单词之间以下 划线分隔,例如config.inc.php,common.php,install_function.php。3. 确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的。4. 类名和文件名一致(包括上面说的大小写一致),且类名只允许字母,例如UserAction类的文件命名是UserAction.class.php,InfoModel类的文件名是InfoModel.class.php。5. 控制器类以Action为后缀,例如UserAction、InfoAction,模型类以Model为后缀,例如UserModel、InfoModel,其他类也分别以相应分类为后缀,例如Service、Widget。6. 方法名只允许由字母组成,下划线是不允许的,首字母要小写,其后每个单词首字母要大写,即所谓的“驼峰法命名”规则,且越详细越好,应该能够描述清楚该方法的功能,例如switchModel、findPage。7. 属性的命名只允许由字母组成,下划线是不允许的,,首字母要小写,其后每个单词首字母要大写,即所谓的“驼峰法命名”规则,例如tablePrefix、tableName。8. 对于对象成员的访问,我们必须始终使用“get”和“set”方法。例如:classFoo{protected$_testObj;publicfunctiongetTestObj()

{ return$this->_testObj;}publicfunctionsetTestObj($testObj)

{ $this->testObj=$_testObj;}}9. 当类成员方法被声明为private时,必须分别以双下划线"__"为开头;被声明为protected时,必须分别以单下划线"_"为开头;一般情况下的方法不含下划线。例如:classFoo{ privatefunction__example()

{ //… }protectedfunction_example()

{ //…}publicfunctionexample()

{ //…}}10. 如果我们需要把一些经常使用的方法定义为全局函数,那么应该把它们以静态(static)的形式定义在类中。例如:classThink{//…static publicfunctionautoload($classname)

{ //…}}11. 被声明为private的类成员属性必须由双下划线"__"作为开头;被声明为protected的类成员属性必须由下划线"_"作为开头;而声明为public的成员属性则在任何时候都不允许含有下划线。12. 函数的命名使用小写字母和下划线的方式,且越详细越好,应该能够描述清楚该函数的功能,例如get_client_ip。13. 当方法或函数参数不一定需要被赋值的时候,用"null"来代替"false"作为函数参数的默认值,除非该参数是boolean值。14. 变量只允许由小写字母和下划线组成,且建议用描述性的变量的命名,越详细越好,以至于像$i或$n等等都是不鼓励使用的。15. 类中的常量constant和全局范围内常量define,只能由大写字母和下划线组成,各个单词之间以下划线分割。16. boolean值和null值都采用小写。

三、编码风格

因为在路上你就已经收获了自由自在的好心情。

记录分享每一点进步和成长

相关文章:

你感兴趣的文章:

标签云: