您好,欢迎访问一九零五行业门户网

关于PHP中的自增、自减操作的奥秘

首先看一道面试题:
$a = 1; $b = &$a; if ($b == $a++) echo true; else echo false;
首先,创建了一个变量$a,并且将数值设定为了1;
然后,创建了一个变量$b,并将其作为对$a的一个引用;
最后这个判断语句中,包含两个opcode:post_inc 和 is_equal。首先执行的是先返回后自增语句(post_inc),首先返回1,然后$a自增为了2,因为$b是$a的一个引用,$b也是2。然后执行的是比较语句(is_equal),因为$b的值是2,$a++的返回值是1,所以不相等。
相类似的面试题目还有:
$a = 1; $b = &$a; $b = $a++; echo a: $a; b: $b;
其它类似信息

推荐信息