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

时间:2018-07-09 14:28:16

标签: php math addition

在PHP中,我已经尝试过此代码print 08+"51"; 但我不知道为什么会给出51,而print 07+"51";给出58?

1 个答案:

答案 0 :(得分:8)

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