下面的php代码的输出 php 2018-10-01 19:26 阅读 640 $a=3;$b=6;$c=1; if($a=5||$b=7 && $c=10){ var_dump($a, $b,$c);//bool(true) int(6) int(1) $a++; $b++; } var_dump($a, $b,$c);//bool(true) int(7) int(1) 关注 | 0 0 评论 智慧编程 0 名望 加载中... 提交评论 默认排序 时间排序 1个回答 答案对人有帮助,有参考价值 0 答案没帮助,是错误的答案,答非所问 采纳 理解运算符的优先级的问题把你的那个判断加上括号,那么你可以这么理解这个逻辑判断$a = ( 5 || ( ( $b = 7 ) && ( $c = 10 ) ) )你可以把括号加上放到程序中测试,结果也还是一样的。从上面我们就可以看出,由于=的优先级是最低的,所以先执行了( 5 || ( ( $b = 7 ) && ( $c = 10 ) ) )。由于||和&&的操作符是同级的,所以从左到右进行操作,5这个数字被程序判断为true。根据或操作原则。二者中只要有一者判断为true则立即结束判断,所以或操作后面的都不执行了。最后将true赋值给$a变量。 2018-11-01 21:35 回答 0 评论 智慧编程 0 名望 加载中... 提交评论 撰写答案 验证码 [舍弃] 提交回答
$a=3;$b=6;$c=1; if($a=5||$b=7 && $c=10){ var_dump($a, $b,$c);//bool(true) int(6) int(1) $a++; $b++; } var_dump($a, $b,$c);//bool(true) int(7) int(1) 关注 | 0 0 评论 智慧编程 0 名望 加载中... 提交评论
答案对人有帮助,有参考价值 0 答案没帮助,是错误的答案,答非所问 采纳 理解运算符的优先级的问题把你的那个判断加上括号,那么你可以这么理解这个逻辑判断$a = ( 5 || ( ( $b = 7 ) && ( $c = 10 ) ) )你可以把括号加上放到程序中测试,结果也还是一样的。从上面我们就可以看出,由于=的优先级是最低的,所以先执行了( 5 || ( ( $b = 7 ) && ( $c = 10 ) ) )。由于||和&&的操作符是同级的,所以从左到右进行操作,5这个数字被程序判断为true。根据或操作原则。二者中只要有一者判断为true则立即结束判断,所以或操作后面的都不执行了。最后将true赋值给$a变量。 2018-11-01 21:35 回答 0 评论 智慧编程 0 名望 加载中... 提交评论