⌂ Home
▲ Previous: if conditional statement
▼ Next: if-elseif-else conditional statement
if-else conditional statementPHP 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:
<?php
if ($a > $b) {
echo "a is greater than b";
} else {
echo "a is NOT greater than b";
}
?>
The 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.
Note: Dangling else
In case of nested if - else statements, an else is always associated with the nearest if.
<?php
$a = false;
$b = true;
if ($a)
if ($b)
echo "b";
else
echo "c";
?>
Despite the indentation (which does not matter for PHP), the else is associated with the if ($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.
<?php
if (1 > 2)
print("1 > 2\n");
else
print("!(1 > 2)\n");
if (2 > 1)
print("2 > 1\n");
else
print("!(2 > 1)\n");
View: Example
Execute:
Result:
!(1 > 2)
2 > 1
The following example shows the shortened form for HTML templates.
<?php
if (1 > 2):
print("1 > 2\n");
else:
print("!(1 > 2)\n");
endif;
if (2 > 1):
print("2 > 1\n");
else:
print("!(2 > 1)\n");
endif;
View: Example
Execute:
Result:
!(1 > 2)
2 > 1
The following example shows the all possible formating of the statement (but not all are compliant with the official PHP formatting standards).
<?php
$condition = (1 > 2);
if ($condition)
print("1 > 2\n");
else
print("!(1 > 2)\n");
$condition = (2 > 1);
if ($condition)
print("2 > 1\n");
else
print("!(2 > 1)\n");
print("\n");
if (1 > 2)
print("1 > 2\n");
else
print("!(1 > 2)\n");
if (2 > 1)
print("2 > 1\n");
else
print("!(2 > 1)\n");
print("\n");
if (1 > 2) print("1 > 2\n");
else print("!(1 > 2)\n");
if (2 > 1) print("2 > 1\n");
else print("!(2 > 1)\n");
print("\n");
if (1 > 2) {
print("1 > 2\n");
} else {
print("!(1 > 2)\n");
}
if (2 > 1) {
print("2 > 1\n");
} else {
print("!(2 > 1)\n");
}
print("\n");
// Shortened form for HTML templates:
if (1 > 2):
print("1 > 2\n");
else:
print("!(1 > 2)\n");
endif;
if (2 > 1):
print("2 > 1\n");
else:
print("!(2 > 1)\n");
endif;
print("\n");
if (1 > 2): print("1 > 2\n");
else: print("!(1 > 2)\n"); endif;
if (2 > 1): print("2 > 1\n");
else: print("!(2 > 1)\n"); endif;
print("\n");
View: Example
Execute:
Result:
!(1 > 2)
2 > 1
!(1 > 2)
2 > 1
!(1 > 2)
2 > 1
!(1 > 2)
2 > 1
!(1 > 2)
2 > 1
!(1 > 2)
2 > 1
▵ Up
⌂ Home
▲ Previous: if conditional statement
▼ Next: if-elseif-else conditional statement