请教个关于逻辑运算符的问题 <?php $a=true; $b=true; $c=true; if($a or ($b=false) and ($c=false)) echo "true \$a=".$a." \$b=".$b." \$c=".$c; else echo "false \$a=".$a." \$b=".$b." \$c=".$c; ?>输出结果为什么是true $a=1 $b=1 $c=1 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <?php $a=true; $b=true; $c=true; if($a or ($b=false and $c=false)) echo "true \$a=".$a." \$b=".$b." \$c=".$c; else echo "false \$a=".$a." \$b=".$b." \$c=".$c;?>这应该是运算符优先级的问题,你的代码就相当于上面这个..and的优先级比or要高, 因为$a=true,所以就符合了条件,就执行了if的判断了 if($a=false and ($b=false or $c=false))跟这个同理是吗,就是说前面短路了后面的? $b=false and $c=false你可以把它看成是一个整体..就是不管它变成什么..都会执行if里的判断,例如:if($a or $d==123){ echo "执行if";}else{ echo "执行else";} 全国性的大站怎么搞?有经验的交流下 如何在页面上使用PHP语言实现打开指定文件夹的操作? 我的代码出现单引号错误!请问怎么处理 关于Apache的SSL问题 ISAPI_Rewrite 防盗链的正则问题. 150分(全部的分都压上了) linux下卸载源码安装的mysql,apache,php的问题 WebService的问题 极度郁闷恐惧:怎么没有反应 请问刚插入了记录怎么知道他的编号? 谁对php的socket比较熟悉啊.php怎么调用socket啊 随机出现的编程怎么写? 导入数据如何避免重复?
<?php
$a=true;
$b=true;
$c=true;
if($a or ($b=false and $c=false))
echo "true \$a=".$a." \$b=".$b." \$c=".$c;
else
echo "false \$a=".$a." \$b=".$b." \$c=".$c;
?>
这应该是运算符优先级的问题,你的代码就相当于上面这个..and的优先级比or要高, 因为$a=true,所以就符合了条件,就执行了if的判断了
跟这个同理是吗,就是说前面短路了后面的?
echo "执行if";
}else{
echo "执行else";
}