douzhenzu0247 2018-07-09 14:28
浏览 33
已采纳

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

In PHP, I haved tried this code print 08+"51"; but I don't know why it gives 51, while print 07+"51"; give 58 ?

  • 写回答

1条回答 默认 最新

  • doubi1818 2018-07-09 14:30
    关注

    Because when an integer starts with a 0 you are using octal. 08 is not a valid octal number so it translates to zero. 0 + 51 (because "51" is converted to a integer thanks to type juggling) equals 51.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频
  • ¥15 按键修改电子时钟,C51单片机
  • ¥60 Java中实现如何实现张量类,并用于图像处理(不运用其他科学计算库和图像处理库))