1,运算优先级
$a = 3; $b = 5; if ($a=5 || $b = 7) { $a++; $b++; } echo $a."#".$b; //结果 1#6 //逻辑运算符优先级高于赋值运算符,var_dump(3 || $b=4) 结果为bool(true) ,所以$a也为bool(true),值永远为1,不会自加。$b并没有被赋值,所以值还是5,结果就是5+1=6;
$a = 3; $b = 5; if ($a=5 && $b = 7) { $a++; $b++; } } echo $a."#".$b; //结果 1#8 //$a为bool(true),不会自加,&b在逻辑运算结束后进行赋值,变为7,自加为8