Protoss/规范/代码规范
来自Blueidea
写在前面:
本规则基于PEAR的代码书写规范,但是又有些许改进,在不同的地方会指出。
目录
[隐藏]缩进规则与行书写规范
所有代码中,均使用4个空格作为缩进标准,不允许使用制表符(tab)。
这样做的好处是:不管什么系统或者编辑器下看,代码都是整齐的。在使用SVN、CVS等工具或者查看diff时,不会对编码和阅读人员带来困难。
如果你使用的是的Emacs编辑器,请设置“indent-tabs-mode”。
如果你使用的是大蛇所钟爱的Vim(GVim)的话,请在_vimrc中作如下设置:
set expandtab
set shiftwidth=4
set softtabstop=4
set tabstop=4
控制结构书写规范
Control Structures,多译作控制结构,可以参考[PHP手册]。
其实说白了就是if, for, while, switch这些啦。
条件简单时
<?php if ((condition1) || (condition2)) { action1; } elseif ((condition3) && (condition4)) { action2; } else { defaultaction; }
注意上面这段代码中,if与“(”之间有个空格,两个条件与符号间有空格。“)”与“{”之间有空格,并且是在同一行。
else和elseif的前后大括号“}”和“{”都在同一行。
如果是switch的话,写成这样:
<?php switch (condition) { case 1: action1; break; case 2: action2; break; default: defaultaction; break; }
注意case和switch的缩进级别是一致的。
条件复杂时
这种写法可以强调第一个条件,同时也属于中规中矩的写法。
<?php if (($condition1 || $condition2) && $condition3 && $condition4 ) { //code here }
下面这种写法是将多个条件对齐。好处显而易见,这样可以方便的一眼扫完所有条件,而且结构清晰。
<?php if ( $condition1 || $condition2 || $condition3 ) { //code here }
<?php $is_foo = ($condition1 || $condition2); $is_bar = ($condition3 && $condtion4); if ($is_foo && $is_bar) { // .... }
三元运算符
<?php $a = $condition1 && $condition2 ? $foo : $bar; $b = $condition3 && $condition4 ? $foo_man_this_is_too_long_what_should_i_do : $bar;