AI摘要:PHP中的三元运算符(?:)用于根据条件选择表达式的值。当expr1为真时,返回expr2;当expr1为假时,返回expr3。此功能在PHP 5.3中引入。此外,还有两个新特性:(expr1) ? ?(expr2) 和 (expr1) ? ?(expr2) 分别在expr1为真或假时返回expr2。这些操作在PHP 7中可用。

Powered by AISummary.

(expr1) ? (expr2) : (expr3) :

表达式 (expr1) ? (expr2) : (expr3) 在 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。
其中false的值的判断跟 if (expr1)一样,包括空字符串 '' false 为空empty null 0 0.0 ‘0’
例子:

$a = $a ? $a : 1;

(expr1) ? :(expr2) :这个是php5.3开始才有的功能

在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr2。
例子

$a = $a ?: 1;

它等价于1的例子

(expr1) ? ?(expr2) :这个是php7才有的功能

它等价于 $a = isset(expr1) ? expr1 : expr2

$b = isset($a) ? $a : 1;

{dotted startColor="#ff6c6c" endColor="#1989fa"/}

原文链接:https://blog.csdn.net/qq_29763583/article/details/81131985