如题 今天突然想起来一个比较有意思代码片段
$a=0; $b=0; if($a=3 || $b=3){ $a++; $b++; }
运行结果当然是 1 1 但实质上 a 其实为true 然后 进行true++ 于是做了一个测试 下面代码可以顺利通过
$c = true; echo $c++;
但是 直接 echo true++ 这样肯定是错误的,但是why?
学习是最好的投资!
boolean 的递增/递减无效果。
为什么直接true++不行, 也许在逻辑上, 只有”变“量的递增/递减才有意义, 常量/布尔值在内存中都是单独的区域,无法去改动的。
++和--运算符只能作用于变量。
2++可以吗? 一样的道理。
boolean 的递增/递减无效果。
为什么直接true++不行, 也许在逻辑上, 只有”变“量的递增/递减才有意义, 常量/布尔值在内存中都是单独的区域,无法去改动的。
++和--运算符只能作用于变量。
2++可以吗? 一样的道理。