我注意到,如果一个值是null
,我可以使用++$value
将其递增一,但关于递减,这不是真的,这意味着--$value
将返回null
,为什么?
$value = null;
echo ++$value; // 1
echo --$value; // null (I'm expecting -1)
Ref#language.operators.increment.php
注:递增/递减运算符只影响数字和字符串。数组、对象和资源不受影响。递减NULL值也没有任何作用,但递增它们会得到1。
从逻辑意义上思考它。
你不能从无到有,但你可以从无到有。Null不是0,它只是没有值。