何时以及如何在 PHP 中使用 Elvis 运算符 (?:)?

Linda Hamilton
发布: 2024-11-11 11:45:03
原创
795 人浏览过

When and How to Use the Elvis Operator (?:) in PHP?

PHP 中的 Elvis 运算符 (?:)

在 PHP 中,?: 运算符称为 Elvis 运算符,是一种条件表达式这简化了在原始值为 null 或 false 时为变量分配默认值的常见用例。

使用 Elvis 运算符

Elvis 运算符的计算结果为如果左操作数为真(非空、非假且非空字符串),则为左操作数。否则,它将计算为正确的操作数。

语法

variable = expression_to_test ?: default_value;
登录后复制

示例

  • 如果变量 'bar' 为 null 或 false,则将 'foo' 分配给变量 'bar':

    $bar = $foo ?: 'foo';
    登录后复制
  • 在您提供的示例中:

    $items = $items ?: $this->_handle->result('next', $this->_result, $this);
    登录后复制

    这将分配结果如果 $items 为 null 或 false,则 $this->_handle->result('next', $this->_result, $this) 到 $items。

Elvis 运算符的优点

  • 代码优化:它消除了嵌套三元运算符或 if-else 语句的需要。
  • 提高可读性:使代码更加简洁,更容易理解。

Elvis 运算符与三元运算符

而 Elvis 运算符和三元运算符运算符 (?: :) 都是根据条件计算表达式,有一些关键区别:

  • Elvis 运算符仅在条件为 true 时计算左操作数。
  • 三元运算符无论条件如何,都会评估 true 和 false 表达式。

以上是何时以及如何在 PHP 中使用 Elvis 运算符 (?:)?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板