php陷井题-运算优先级

在php中逻辑运算符的优先级要高于赋值运算符,另外要注意“先整体,再局部”的思想。
<?php
$a = 3;
$b = 6;
if ($a = 30 || $b = 60) {// ||左面加不加空格一样;$a = (30 || $b = 60),这里$a=true,||是短路运算符,所以$b没有再次赋值了
$a++;
$b++;
}
echo $a . ‘===’ . $b; //同下,需注意运算符优先级,输出1,7
$a = 3;
$b = 6;
$c = 1;
if ($a = 5 || $b = 7 && $c = 10) {//$a =( 5 || ($b = 7 && $c = 10) ) 从左往左,先整体,后局部
$a++;
$b++;
}
var_dump($a, $b, $c);//bool(true) int(7) int(1)
?>

发布者:天南

一个好人

留下评论

电子邮件地址不会被公开。 必填项已用*标注