php编码规范(5)

3.6 换行

当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之:

– 在一个逗号后面断开- 在一个操作符前面断开- 宁可选择较高级别(higher-level)的断开,而非较低级别(lower-level)的断开- 新的一行应该与上一行同一级别表达式的开头处对齐- 如果以上规则导致你的代码混乱或者使你的代码都堆挤在右边,那就代之以缩进8个空格。

以下是断开方法调用的一些例子:

somemethod(longexpression1, longexpression2, longexpression3,              longexpression4, longexpression5);

$var = somemethod1(longexpression1,                  somemethod2(longexpression2,                               longexpression3));

以下是两个断开算术表达式的例子。前者更好,因为断开处位于括号表达式的外边,这是个较高级别的断开。

$longname1 = $longname2 * ($longname3 + $longname4 – $longname5)            + 4 * $longname6; //使用这种缩进方式

$longname1 = $longname2 * ($longname3 + $longname4                    - $longname5) + 4 * $longname6; //避免这种

以下是两个缩进方法声明的例子。前者是常规情形。后者若使用常规的缩进方式将会使第二行和第三行移得很靠右,所以代之以缩进8个空格

//传统的缩进方式function somemethod($anarg, $anotherarg, $yetanotherarg,           $andstillanother) {…}

//利用8个连续空格避免过渡的缩进function horkinglongmethodname($anarg,     $anotherarg, $yetanotherarg,     $andstillanother) {…}

if语句的换行通常使用8个空格的规则,因为常规缩进(4个空格)会使语句体看起来比较费劲。比如:

//不要使用这种缩进方式if ((condition1 && condition2)  || (condition3 && condition4)  ||!(condition5 && condition6)) { //错误的换行方式,没有进行缩进  dosomethingaboutit(); //条件与此句对齐,造成阅读程序时很可能漏过此句}

//应该使用这种缩进方式if ((condition1 && condition2)    || (condition3 && condition4)    ||!(condition5 && condition6)) {  dosomethingaboutit();}

//或者这样的缩进方式也可以if ((condition1 && condition2) || (condition3 && condition4)        ||!(condition5 && condition6)) {  dosomethingaboutit();}

这里有三种可行的方法用于处理三元运算表达式:

$alpha = (alongbooleanexpression) ? beta : gamma;

$alpha = (alongbooleanexpression) ? beta                 : gamma;

$alpha = (alongbooleanexpression)    ? beta    : gamma;

http://www.bkjia.com/phpjc/532599.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/532599.htmltecharticle3.6 换行 当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之: – 在一个逗号后面断开 – 在一个操作符前面断开 – 宁可选择较…

Posted in 未分类