我们经常要写类似这种判断的代码//判断是否有一个变量$a=isset($b)?$b:$c;//判断变量是否为Empty$a=!empty($b)?$b:$c;PHP7有新的语法糖用于简化(PHP版本必须大于7)//判断是否有变量$a=$b??$c;//等同于$a=isset($b)?$b:$c;//判断变量是否为空$a=$b?:$c;//等价于$a=!empty($b)?$b:$c;它们的区别在于空合并运算符:??判断变量是否不存在或者是否为NULLnull条件运算符:?:也会判断变量是否为空$a=[];print_r($a??'Gothisway');//[]print_r($a?:'往这边走');//'往这边走'??也会判断是否为NULL$a=null;print_r($a??'走这边');//走这边
PHP7--and--作用和区别相关文章