@(太开心)
今天看到这样的代码
$order = strtoupper($order) == 'ASC' || empty($order) ? 'ASC' : 'DESC';
我们假设$order为空字符串,你是否得出这样的结论,
结论是1
@(笑尿)然而测试结果是...
此处内容需要评论回复后方可阅读。
看到这样的结果,我开始怀疑了。。
因为我曾经在博客发过对逻辑运算符的探究
[button href="https://dyedd.cn/735.html"]没有打脸!!![/button]
经过群内热心网友的解答,才发现没有注意到优先级
三目的顺序比逻辑运算符还小。
因此我们得出结论是看出? :先执行
然而却是 ||先
$order = strtoupper($order) == 'ASC' || (empty($order) ? 'ASC' : 'DESC');
当把后面括号起来,结果终于是1了。。
@(惊哭)