PHP两个三元运算符“??” 和“?:”的用法和区别
"??"是php7新引入的语法,它相当于是isset($k)?
“??”被称为空合并运算符。它的语法形式为 k1 ?? k2
。它的作用是如果 k1
不为 null
,则返回 k1
的值,否则返回 k2
的值。这个运算符主要用于简化对变量是否为空的判断,并提供一个默认值。
直接上实例吧,基本一看就懂:
isset($aaa) ? $aaa : $bbb; ?? 合并操作符的简写形式 $aaa ?? $bbb; 俩代码一个效果 $aaa ? $aaa : $bbb; ?: 三元运算符的简写形式 $aaa ?: $bbb 注意:当$aaa未被声明时,[??]不会报错(因为用了isset),[?:]会报一个Notice
评论
发表评论: