关于PHP三目运算,有点迷糊,逻辑能力太差求解答

2025-05-04 23:31:50
推荐回答(2个)
回答1:

你都写错了,$a = true ? 0 : true ? 1 :2;
上面的等效于 if(bool){$a = 0;}else{if(bool){$a =1;}else{$a=2;}}
__
$a=$b ? 0 : $c ? 1 :2;如果$b是真,那么执行问号后面冒号前面的,如果是假,就执行冒号后面的!而为假时,执行冒号后面的,而冒号后面又是一个三元运算!举一反3啊!说的直白点就是嵌套

回答2:

“$a =true:?0:true?1:2;” 应该是写错了吧(编译不通过的),是不是“$a =true?0:true?1:2;”?
$a =true?0:true?1:2; // 结果为0