在 PHP 中,为什么 `print 08+"51";` 给出 51?

In PHP, why does `print 08+"51";` give 51?

在PHP中,我试过这段代码print 08+"51"; 但我不知道为什么它给出 51,而 print 07+"51"; 给出 58 ?

因为当整数以 0 开头时,您使用的是八进制。 08 不是有效的八进制数,因此它转换为零。 0 + 51(因为“51”由于类型转换而被转换为整数)等于 51.