PHP If...Else 语句
条件语句用于根据不同条件执行不同动作。
PHP 条件语句
当您编写代码时,您常常需要为不同的判断执行不同的动作。您可以在代码中使用条件语句来完成此任务。
在 PHP 中,提供了下列条件语句:
- if 语句 - 在条件成立时执行代码
- ? : -三元运算符
- if...else 语句 - 在条件成立时执行一块代码,条件不成立时执行另一块代码
- if...else if....else 语句 - 在若干条件之一成立时执行一个代码块
- switch 语句 - 在若干条件之一成立时执行一个代码块
PHP - if 语句
if 语句用于仅当指定条件成立时执行代码。
语法
{
条件成立时要执行的代码;
}
如果当前时间小于 20,下面的实例将输出 "Have a good day!":
<?php $t=date("H"); if ($t<"20") { echo "Have a good day!"; } ?>
运行结果:
Have a good day!
三元运算符
另一个条件运算符是"?:"(或三元)运算符 。
语法格式
对 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。
自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。
以下实例中通过判断 $_GET 请求中含有 user 值,如果有返回 $_GET['user'],否则返回 nobody:
<?php $test = 'php中文网'; // 普通写法 $username = isset($test) ? $test : 'nobody'; echo $username, PHP_EOL; // PHP 5.3+ 版本写法 $username = $test ?: 'nobody'; echo $username, PHP_EOL; ?>
运行结果:
php中文网 php中文网
注意:PHP_EOL ()是一个换行符,兼容更大平台。
这里解释下,细心的你可能会发现,后面的PHP_EOL并没有被浏览器显示出来,因为浏览器只识别HTML标签,如:<br />,<p>;PHP_EOL只有在文本中才会被显示;
在 PHP7+ 版本多了一个 NULL 合并运算符,实例如下:
<?php // 如果 $_GET['user'] 不存在返回 'nobody',否则返回 $_GET['user'] 的值
$_GET['user] = '小明';
$username = $_GET['user'] ?? 'nobody';
echo $username;
echo "<br />"; // 类似的三元运算符 $username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
echo $username; ?>
运行结果:
小明 小明
PHP - if...else 语句
在条件成立时执行一块代码,条件不成立时执行另一块代码,请使用 if....else 语句。
语法
{
条件成立时执行的代码;
}
else
{
条件不成立时执行的代码;
}
如果当前时间小于 20,下面的实例将输出 "Have a good day!",否则输出 "Have a good night!":
<?php $t=date("H"); if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?>
运行结果:
Have a good day!
PHP - if...else if....else 语句
在若干条件之一成立时执行一个代码块,请使用 if....else if...else 语句。.
语法
{
if 条件成立时执行的代码;
}
else if (条件)
{
elseif 条件成立时执行的代码;
}
else
{
条件不成立时执行的代码;
}
如果当前时间小于 10,下面的实例将输出 "Have a good morning!",如果当前时间不小于 10 且小于 20,则输出 "Have a good day!",否则输出 "Have a good night!":
<?php $t=date("H"); if ($t<"10") { echo "Have a good morning!"; } else if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } ?>
运行结果:
Have a good day!
switch 语句将在php条件语句(二)中