(PHP 4, PHP 5, PHP 7, PHP 8)
Often you'd want to execute a statement if a certain condition is
met, and a different statement if the condition is not met. This
is what else
is for. else
extends an if
statement to execute a statement
in case the expression in the if
statement
evaluates to false
. For example, the following
code would display a is greater than
b if $a is greater than
$b, and a is NOT greater
than b otherwise:
<?phpif ($a > $b) { echo "a is greater than b";} else { echo "a is NOT greater than b";}?>
else
statement is only executed if the
if
expression evaluated to
false
, and if there were any
elseif
expressions - only if they evaluated to
false
as well (see elseif).
Note: Dangling else
In case of nested
if
-else
statements, anelse
is always associated with the nearestif
.Despite the indentation (which does not matter for PHP), the<?php$a = false;$b = true;if ($a) if ($b) echo "b";else echo "c";?>
else
is associated with theif ($b)
, so the example does not produce any output. While relying on this behavior is valid, it is recommended to avoid it by using curly braces to resolve potential ambiguities.