Php 简明教程
PHP - If…Else Statement
实现条件逻辑的能力是任何编程语言(包括 PHP)的基本要求。PHP 有三个关键字(也称为 language constructs) – if, elseif 和 else – 根据不同的条件做出决策。
if 关键字是代码片段条件执行的基本结构。 if 关键字通常与 else 关键字结合使用,尽管它并不总是必需的。
如果你想在条件为 true 时执行一些代码,在相同条件为 false 时执行其他代码,则使用 “if….else” 语句。
Syntax
%{s8} 语句在 PHP 中的使用和语法类似于 C 语言。以下是 PHP 中 if 语句的语法 −
if (expression)
code to be executed if expression is true;
else
code to be executed if expression is false;
if 语句总后跟一个布尔表达式。
-
如果布尔表达式的估值为 true,PHP 将执行布尔表达式后面的语句。
-
如果布尔表达式的估值为 false,则该语句将被忽略。
-
如果算法需要在表达式为 false 时执行其他语句,则在 else 关键字之后编写该语句。
Example
以下是一个演示 if else 语句用法的简单 PHP 代码。有两个变量 $a 和 $b。该代码识别出它们中的哪一个更大。
<?php
$a=10;
$b=20;
if ($a > $b)
echo "a is bigger than b";
else
echo "a is not bigger than b";
?>
运行上述代码时,它会显示以下 output −
a is not bigger than b
交换 “a” 和 “b” 的值,然后重新运行。现在,你将获得以下输出 −
a is bigger than b
Example
如果当前是星期五,下列示例将输出“Have a nice weekend!”,否则将输出“Have a nice day!” −
<?php
$d = date("D");
if ($d == "Fri")
echo "Have a nice weekend!";
else
echo "Have a nice day!";
?>
它将生成以下 output −
Have a nice weekend!
Using endif in PHP
PHP 代码通常与 HTML 脚本混合在一起。我们可以在 if 部分和 PHP 代码中的 else 部分插入 HTML 代码。PHP 为 if 和 else 语句提供了替代语法。将左大括号改为冒号 (:),将右大括号改为 endif; ,这样可以将 HTML 块添加到 if 和 else 部分。
<?php
$d = date("D");
if ($d == "Fri"): ?>
<h2>Have a nice weekend!</h2>
<?php else: ?>
<h2>Have a nice day!</h2>
<?php endif ?>
确保上述脚本位于 PHP 服务器的文档根目录中。访问 URL http://localhost/hello.php 。如果当前不是星期五,浏览器中应显示以下输出 −
Have a nice day!
Using elseif in PHP
如果某几个条件中有一个条件是真的,而您希望执行一些代码,则使用 elseif 语句。PHP 中的 elseif 语言结构是 if 和 else 的组合。
-
与 else 类似,它指定了一个备用语句,当原始 if 表达式计算为假时执行。
-
然而,与 else 不同,仅当 elseif 条件表达式计算为真时,它才会执行该备用表达式。
if (expr1)
code to be executed if expr1 is true;
elseif (expr2)
code to be executed if expr2 is true;
else
code to be executed if expr2 is false;
Example
让我们修改上述代码以在星期日、星期五和其他日子显示不同的消息。
<?php
$d = date("D");
if ($d == "Fri")
echo "<h3>Have a nice weekend!</h3>";
elseif ($d == "Sun")
echo "<h3>Have a nice Sunday!</h3>";
else
echo "<h3>Have a nice day!</h3>";
?>
在星期日,浏览器应显示以下 output −
Have a nice Sunday!
Example
这里有另一个示例,说明 if–elselif–else 语句的用法 −
<?php
$x=13;
if ($x%2==0) {
if ($x%3==0)
echo "<h3>$x is divisible by 2 and 3</h3>";
else
echo "<h3>$x is divisible by 2 but not divisible by 3</h3>";
}
elseif ($x%3==0)
echo "<h3>$x is divisible by 3 but not divisible by 2</h3>";
else
echo "<h3>$x is not divisible by 3 and not divisible by 2</h3>";
?>
上述代码还使用 nestedif 语句。
当 x 的值为 13、12 和 10 时, output 如下 −
13 is not divisible by 3 and not divisible by 2
12 is divisible by 2 and 3
10 is divisible by 2 but not divisible by 3