- 三元运算符1:表达式
(expr1) ? (expr2) : (expr3)
在 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。 - 三元运算符2:自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式
expr1 ?: expr3
在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。
注意: 三元运算符,expr1如果为变量,当次变量未定义时,会报错notice。
所以必要时,isset()判断一下:isset(expr1)&&expr1?expr2:expr3
- NULL 合并运算符:
expr1??expr3
expr1存在且值不为NULL, 它就会返回expr1,否则返回expr3。