提问人:Sharanya Dutta 提问时间:6/6/2023 最后编辑:Sharanya Dutta 更新时间:6/6/2023 访问量:38
为什么PHP中的递减运算符以这种方式工作?[复制]
Why does the decrementing operator in PHP work in this way? [duplicate]
问:
以下代码:
$arr = array(1, 2, 3, 4, 5);
$i = 5;
while($i >= 1){
var_dump($i);
var_dump($arr[--$i]);
}
具有以下输出:
int(5)
int(5)
int(4)
int(4)
int(3)
int(3)
int(2)
int(2)
int(1)
int(1)
但是,如果我们用单行替换循环中的两行:while
var_dump($i == $arr[--$i]);
该代码具有以下输出:
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
第一个输出显示 和 相等。$i
$arr[--$i]
第二个输出显示 和 不相等。$i
$arr[--$i]
为什么会有这种差异?我错过了什么?
答: 暂无答案
评论
var_dump($i == --$i)
true