else

(PHP 4, PHP 5, PHP 7, PHP 8)

經(jīng)常需要在滿足某個(gè)條件時(shí)執(zhí)行一條語句,而在不滿足該條件時(shí)執(zhí)行其它語句,這正是 else 的功能。else 延伸了 if 語句,可以在 if 語句中的表達(dá)式的值為 false 時(shí)執(zhí)行語句。例如以下代碼在 $a 大于 $b 時(shí)顯示 a is bigger than b,反之則顯示 a is NOT bigger than b

<?php
if ($a $b) {
  echo 
"a is greater than b";
} else {
  echo 
"a is NOT greater than b";
}
?>
else 語句僅在 if 以及 elseif(如果有的話)語句中的表達(dá)式的值為 false 時(shí)執(zhí)行(參見 elseif)。

注意: 懸掛的 else

在多層嵌套 if-else 語句的情況下, else 總是與最近的 if 進(jìn)行關(guān)聯(lián)。

<?php
$a 
false;
$b true;
if (
$a)
    if (
$b)
        echo 
"b";
else
    echo 
"c";
?>
雖然存在縮進(jìn)(對 PHP 來說,無關(guān)緊要), 但是 else 還是與 if ($b) 進(jìn)行關(guān)聯(lián),所以以上示例不會(huì)產(chǎn)生任何輸出。雖然可以依賴此特性,但是推薦使用花括號(hào),避免潛在的歧義問題。