明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

PHP 編碼規(guī)范(5)

[摘要]3.6 換行當(dāng)一個(gè)表達(dá)式無法容納在一行內(nèi)時(shí),可以依據(jù)如下一般規(guī)則斷開之:- 在一個(gè)逗號后面斷開- 在一個(gè)操作符前面斷開- 寧可選擇較高級別(higher-level)的斷開,而非較低級別(lower-level)的斷開- 新的一行應(yīng)該與上一行同一級別表達(dá)式的開頭處對齊- 如果以上規(guī)則導(dǎo)致你的代碼混...
3.6 換行

當(dāng)一個(gè)表達(dá)式無法容納在一行內(nèi)時(shí),可以依據(jù)如下一般規(guī)則斷開之:

- 在一個(gè)逗號后面斷開
- 在一個(gè)操作符前面斷開
- 寧可選擇較高級別(higher-level)的斷開,而非較低級別(lower-level)的斷開
- 新的一行應(yīng)該與上一行同一級別表達(dá)式的開頭處對齊
- 如果以上規(guī)則導(dǎo)致你的代碼混亂或者使你的代碼都堆擠在右邊,那就代之以縮進(jìn)8個(gè)空格。

以下是斷開方法調(diào)用的一些例子:


someMethod(longExpression1, longExpression2, longExpression3,
             longExpression4, longExpression5);

$var = someMethod1(longExpression1,
                 someMethod2(longExpression2,
                              longExpression3));

以下是兩個(gè)斷開算術(shù)表達(dá)式的例子。前者更好,因?yàn)閿嚅_處位于括號表達(dá)式的外邊,這是個(gè)較高級別的斷開。


$longName1 = $longName2 * ($longName3 + $longName4 - $longName5)
            + 4 * $longname6; //使用這種縮進(jìn)方式

$longName1 = $longName2 * ($longName3 + $longName4
                   - $longName5) + 4 * $longname6; //避免這種

以下是兩個(gè)縮進(jìn)方法聲明的例子。前者是常規(guī)情形。后者若使用常規(guī)的縮進(jìn)方式將會使第二行和第三行移得很靠右,所以代之以縮進(jìn)8個(gè)空格


//傳統(tǒng)的縮進(jìn)方式
function someMethod($anArg, $anotherArg, $yetAnotherArg,
          $andStillAnother) {
...
}

//利用8個(gè)連續(xù)空格避免過渡的縮進(jìn)
function horkingLongMethodName($anArg,
     $anotherArg, $yetAnotherArg,
     $andStillAnother) {
...
}

if語句的換行通常使用8個(gè)空格的規(guī)則,因?yàn)槌R?guī)縮進(jìn)(4個(gè)空格)會使語句體看起來比較費(fèi)勁。比如:


//不要使用這種縮進(jìn)方式
if ((condition1 && condition2)
   (condition3 && condition4)
   !(condition5 && condition6)) { //錯(cuò)誤的換行方式,沒有進(jìn)行縮進(jìn)
  doSomethingAboutIt(); //條件與此句對齊,造成閱讀程序時(shí)很可能漏過此句
}

//應(yīng)該使用這種縮進(jìn)方式
if ((condition1 && condition2)
     (condition3 && condition4)
     !(condition5 && condition6)) {
  doSomethingAboutIt();
}

//或者這樣的縮進(jìn)方式也可以
if ((condition1 && condition2) (condition3 && condition4)
         !(condition5 && condition6)) {
  doSomethingAboutIt();
}

這里有三種可行的方法用于處理三元運(yùn)算表達(dá)式:

$alpha = (aLongBooleanExpression) ? beta : gamma;

$alpha = (aLongBooleanExpression) ? beta
                 : gamma;

$alpha = (aLongBooleanExpression)
    ? beta
    : gamma;





標(biāo)簽:PHP 編碼規(guī)范(5) 

相關(guān)文章