php三元运算符给出错误

时间:2013-06-26 21:41:00

标签: php if-statement ternary-operator

在PHP中,如果我有这样的三元组:

$my_thing = $this->myAttribute ? $this->myAttribute : "No attribute was set.";

可以这样缩写吗?

$my_thing = $this->myAttribute ?: "No attribute was set."

我以为我记得PHP在其三元组中支持这个,但现在我收到了一个错误。

1 个答案:

答案 0 :(得分:7)

PHP 5.3及更高版本支持它。来自PHP.net

  

从PHP 5.3开始,可以省略三元运算符的中间部分。表达式expr1?:expr3如果expr1的计算结果为TRUE则返回expr1,否则返回expr3。