PHP 基础陷阱题(变量赋值)
PHP 基础陷阱题代码,需要的朋友可以参考下
代码如下
:
<?php
$a
=3;
$b
=6;
if
(
$a
=5||
$b
=7){
$a
++;
$b
++;
}
var_dump(
$a
,
$b
);
陷阱一
把
$a
=5、
$b
=7 看成了
$a
==5、
$b
==7
错误结果:
3,6
陷阱二
运算符的优先级,认为
$a
=5 赋值成功
$b
=7 没执行
错误结果:
6,7
正确理解
陷阱是运算符的优先,赋值运算符(
=)的优先级是最低的,所以正确理解应该是
$a
=(5||
$b
=7)
正确结果:
true,7
升级一下
变形一
代码如下
:
$a
=3;
$b
=6;
$c
=1;
if
(
$a
=5||
$b
=7 &&
$c
=10){
$a
++;
$b
++;