PHP 中的三元运算符

王林
发布: 2024-08-29 12:39:29
原创
502 人浏览过

三元运算符就像所有逻辑运算符、算术运算符和比较运算符一样。它是一个条件运算符,可以帮助检查某些条件并相应地完成工作。三元运算符减少了代码的长度。您可以使用三元运算符轻松检查所有条件和比较。这是人们通常用于条件检查的传统 if-else 运算符的替代方案。该运算符的工作顺序是从左到右。当用户需要节省时间时,这是一个非常好的选择。在本主题中,我们将学习 PHP 中的三元运算符。

开始您的免费软件开发课程

网络开发、编程语言、软件测试及其他

为什么我们在 PHP 中使用三元运算符?

我们使用三元运算符的原因是为了简化 if-else 语句。它可用于分配变量。使用此运算符的另一个原因是当用户想要在验证后分配数据或验证表单时。三元运算符也很容易理解和使用。它还可以节省时间,并在当前条件下遇到空值时创建通知。

语法

三元运算符因其存在三个操作数而得名。这三个操作数代表一个条件,条件为真时代表一个结果,结果为假时代表第三个操作数。其语法如下:

Condition? Statement 1: Statement2
登录后复制

上面的语法可以解释如下。三元运算符的工作方式与 if-else 语句类似。这里的条件是if条件,要进行验证和检查。这会返回一个布尔值,可以是 true 也可以是 false。如果此条件成立,则执行语句 1。如果语句 1 不为 true,那么就像 if else 语句 2 中的 else 条件一样,将被执行。

PHP 中三元运算符的示例

让我们看几个例子,以便我们更好地理解三元运算符的工作原理。

示例#1

这是三元运算符的简单示例

代码:

<?php
$age=19;
print ($age>=18) ? "You can vote": "You are not eligible to vote";
?>
登录后复制

这是三元运算符最简单的示例,您可以在其中了解其工作原理。这里变量$age存储候选人的年龄。他们正在验证候选人是否有资格投票。这里只是代码的一个生命周期;正在检查此情况。它验证了如果年龄大于 18 岁,则“您可以投票”;否则,“你没有资格投票。”

输出:

PHP 中的三元运算符

示例#2

现在让我们检查一下情况,年龄小于 18 时则相反。在这种情况下,代码如下。

代码:

<?php
$age=15;
print ($age>=18) ? "You can vote": "You are not eligible to vote";
?>
登录后复制

此示例将获取语句 2 作为结果。它将评估情况。这里的age变量的值小于18。不满足三元运算符中的条件;因此它的输出将是“你没有资格投票。”

输出:

PHP 中的三元运算符

您还可以使用速记三元运算符。您可以消除左侧运算符,从而获得更短的表达式。

这可以表示为:

$result = $initial ?: 'default';
登录后复制

这里这个表达式的工作原理是,直到初始值不为 false 为止,条件将被执行。一旦条件评估为 false,将使用默认值。这也可以通过使用普通的三元运算符来使用,如下所示:

$result = $condition ? $condition : 'default';
登录后复制

示例#3

为了测试这一点,让我们看一个示例

代码:

<?php
$num=5;
$num1=6;
$num2=10;print ($num > $num1) ? ($num > $num2) : 'Num2 is largest';
?>
登录后复制

此代码检查指定的两个条件。它首先检查 $num 是否大于 $num1。这里这个条件是假的。然后它将移动到下一个条件。此条件检查 $num 是否大于 $num2。这个条件也会返回 false,因为 5 不大于 10。这里默认值设置为 Num2 是最大的。第二个条件也不成立,因此它将选择默认值作为输出。因此这里的输出将是“Num2 是最大的”。

输出:

PHP 中的三元运算符

示例#4

代码:

<?php
$score = 10;
$age = 20;
print ($age > 10 ? ($score < 80 ? 'behind' : 'above average') : ($score < 50 ? 'behind' : 'above average')); // returns 'You are behind'
?>
登录后复制

Consider two variables, one for score and one for age, and use a ternary operator. Here it will check if the age is greater than 10 and the score is less than 80; then, the output will be behind. Else the output will be above average. Similarly, we are checking another example where the age is greater than 10, but the score is less than 50. Then also the output will be behind, else it will be above average. The output of the above code will be: Considering your age and score; you are: behind.

Output:

PHP 中的三元运算符

Advantages

Below are a few of the advantages explained.

  • The Ternary Operator helps make the code simple and quicker than if-else.
  • It helps in having the logic in line with the output and does not break the output into if-else blocks.
  • The code looks much better, and cosmetically it is nicer to look at.
  • Utilizing code makes code maintenance easier.

Conclusion

The ternary operator may look different from other operators and may also confuse you a bit initially. But once you know how to use it, you can easily use and master it. It will make your code look more manageable and easy to understand.

以上是PHP 中的三元运算符的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
php
来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!