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