1、 下面$b 和 $c 分别值为多少?为什么$b 和 $c 值相等?
PHP 益智题答案: 2、 今天问个有趣的问题,下面两个 $b 和 b 分别值是多少? 1、 在PHP 中 ++ 比 + 优先级更高,所以 如果你听信了上面的解释,觉得自己就掌握了这个,那么你就弱爆了!!!首先上面解释纯粹是对着答案给解释, 根本不合逻辑的!!因为既然第一个先计算$a++,那么下面应该也先计算后面的$a++,因为更有优先级! 所以综上所述,这个案例仅仅是PHP 一个逻辑上的运算Bug,不要当真,可能在不同版本的系统性, 显示结果不一样也不一定。 2、 $b=3; b=2; 在PHP的解释可以通过上面来解释,而Javascript中, $a++ 比 + 优先级差, 所以加号从左往右计算,也即是 b=1+a++ = 1+1 正如上面的,因为 a++ 是先用,再执行加,所以c先赋值了a=1,赋值操作之后,再执行 a++; 所以此时 d = 1; a = 2; 而下面会++b会弹出2,因为 ++ b 就是先加后操作, 所以 等于 b++; d = b; 所以此时 d = 2; |