Php中三元运算符和合并操作符的区别

基本的(expr1) ? (expr2) : (expr3) 就不说了。
?: 左边表达式成立就返回左边,不成立,返回右边
?? 相当于:isset(expr1) ? expr1 : expr2

也就是说 ?? 只是说明如果左侧设置了并且不为null才返回左侧,如果左侧设置了但是为空字符串,也同样返回左侧的空字符串。