我注意到,如果某个值为null
,我可以使用++$value
将其递增1,但对于递减则不正确,这意味着--$value
会返回null
,为什么?
$value = null;
echo ++$value; // 1
echo --$value; // null (I'm expecting -1)
答案 0 :(得分:9)
参考#language.operators.increment.php
注意:递增/递减运算符仅影响数字和 字符串。数组,对象和资源不受影响。递减 NULL值也没有效果,但递增它们会产生1。
答案 1 :(得分:2)
从逻辑上考虑它。
你不能从任何东西中取走一些东西,但你可以添加一些东西。 Null不是0,它根本没有价值。