强迫症犯了,一段很简单的代码。if($a=3 && $a =4){echo $a;}问为什么会输出布尔值 a =1以及是先给a赋值3还是先给a赋值4?请逻辑大神给个解释。
2 回答
慕桂英3389331
TA贡献2036条经验 获得超8个赞
我认为 $a=3 && $a =4 的执行次序实际是:$a = ( 3 && ($a = 4) ),
因为&&的优先级高于=,而3&&4的结果是真,在PHP中真的值是1,假是0.
故最后 $a = 1
呼唤远方
TA贡献1856条经验 获得超11个赞
佩服,佩服 if(fwrite($file, $data2) && fclose($file)){ echo 'ok';},file是打开的文件,data2是数据,这段代码的意思是把data2的数据写入file,并关闭文件。。为什么这个代码竟然管用,正常情况下不是应该是从右向左执行的么。
- 2 回答
- 0 关注
- 1419 浏览
添加回答
举报
0/150
提交
取消