PHP两个三元运算符“??” 和“?:”的用法和区别

远昔 代码记录 2024-05-29 95 0

"??"是php7新引入的语法,它相当于是isset($k)?

“??”被称为空合并运算符。它的语法形式为 k1 ?? k2。它的作用是如果 k1 不为 null,则返回 k1 的值,否则返回 k2 的值。这个运算符主要用于简化对变量是否为空的判断,并提供一个默认值。

直接上实例吧,基本一看就懂:

isset($aaa) ? $aaa : $bbb;
?? 合并操作符的简写形式
$aaa ?? $bbb;

俩代码一个效果


$aaa ? $aaa : $bbb;
?: 三元运算符的简写形式
$aaa ?: $bbb
注意:当$aaa未被声明时,[??]不会报错(因为用了isset),[?:]会报一个Notice

评论

发表评论:

挤眼 亲亲 咆哮 开心 想想 可怜 糗大了 委屈 哈哈 小声点 右哼哼 左哼哼 疑问 坏笑 赚钱啦 悲伤 耍酷 勾引 厉害 握手 耶 嘻嘻 害羞 鼓掌 馋嘴 抓狂 抱抱 围观 威武 给力
提交评论

清空信息
关闭评论