(PHP 4, PHP 5, PHP 7, PHP 8)
ある条件が満たされている場合にある文を実行し、
その条件が満たされていない場合に別の文を実行したいと考えた
ことが度々あるかと思います。
このためにelse
があります。
else
は、if
文における式の値が
false
の場合にある文を
実行するようにif
文を拡張します。
例えば、次のコードは、$aが
$bよりも大きい場合に
aはbより大きいと表示し、
そうでない場合に、
aはbよりも大きくないと表示します。
<?php
if ($a > $b) {
echo "aはbよりも大きい";
} else {
echo "aはbよりも大きくない";
}
?>
else
文は、if
式が
false
と評価された場合のみ実行されます。
また、elseif
式がある場合には、それも
false
と評価された場合にのみ実行されます。
(elseif参照)
注意: else がぶら下がる場合
if
-else
文がネストした場合、else
は常に、もっとも近いif
文に関連付けられます。どうインデントされているかに関わらず (PHP では、インデントは結果に影響しません)、<?php
$a = false;
$b = true;
if ($a)
if ($b)
echo "b";
else
echo "c";
?>else
はif ($b)
に関連付けられます。 よって、この例は何も出力しません。 この振る舞いが正しいことに依存している場合、 曖昧さを解決するために波括弧を使うことを推奨します。