三元运算符就像所有逻辑运算符、算术运算符和比较运算符一样。它是一个条件运算符,可以帮助检查某些条件并相应地完成工作。三元运算符减少了代码的长度。您可以使用三元运算符轻松检查所有条件和比较。这是人们通常用于条件检查的传统 if-else 运算符的替代方案。该运算符的工作顺序是从左到右。当用户需要节省时间时,这是一个非常好的选择。在本主题中,我们将学习 PHP 中的三元运算符。
开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
我们使用三元运算符的原因是为了简化 if-else 语句。它可用于分配变量。使用此运算符的另一个原因是当用户想要在验证后分配数据或验证表单时。三元运算符也很容易理解和使用。它还可以节省时间,并在当前条件下遇到空值时创建通知。
语法
三元运算符因其存在三个操作数而得名。这三个操作数代表一个条件,条件为真时代表一个结果,结果为假时代表第三个操作数。其语法如下:
Condition? Statement 1: Statement2
上面的语法可以解释如下。三元运算符的工作方式与 if-else 语句类似。这里的条件是if条件,要进行验证和检查。这会返回一个布尔值,可以是 true 也可以是 false。如果此条件成立,则执行语句 1。如果语句 1 不为 true,那么就像 if else 语句 2 中的 else 条件一样,将被执行。
让我们看几个例子,以便我们更好地理解三元运算符的工作原理。
这是三元运算符的简单示例
代码:
<?php $age=19; print ($age>=18) ? "You can vote": "You are not eligible to vote"; ?>
这是三元运算符最简单的示例,您可以在其中了解其工作原理。这里变量$age存储候选人的年龄。他们正在验证候选人是否有资格投票。这里只是代码的一个生命周期;正在检查此情况。它验证了如果年龄大于 18 岁,则“您可以投票”;否则,“你没有资格投票。”
输出:
现在让我们检查一下情况,年龄小于 18 时则相反。在这种情况下,代码如下。
代码:
<?php $age=15; print ($age>=18) ? "You can vote": "You are not eligible to vote"; ?>
此示例将获取语句 2 作为结果。它将评估情况。这里的age变量的值小于18。不满足三元运算符中的条件;因此它的输出将是“你没有资格投票。”
输出:
您还可以使用速记三元运算符。您可以消除左侧运算符,从而获得更短的表达式。
这可以表示为:
$result = $initial ?: 'default';
这里这个表达式的工作原理是,直到初始值不为 false 为止,条件将被执行。一旦条件评估为 false,将使用默认值。这也可以通过使用普通的三元运算符来使用,如下所示:
$result = $condition ? $condition : 'default';
为了测试这一点,让我们看一个示例
代码:
<?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 $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:
Below are a few of the advantages explained.
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中文网其他相关文章!