PHP 中的强制转换是如何工作的?
这不起作用:
(int)08 == (int)09==0
但是这个和这个起作用了?
(int)07==7
(int)06==6
What doesn't this work:
(int)08 == (int)09==0
But this and this does?
(int)07==7
(int)06==6
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
08 是八进制的(因为它以 0 开头),因此它是无效的。 请参阅文档。
08 is in octal base (because it starts with a 0), hence it is invalid. See the documentation.
因为
08
和09
不是有效的八进制数。 请参阅文档中的警告。because
08
and09
are not valid octal numbers. see warning in docs.您正在以八进制形式键入无效数字。
You're type casting an invalid number in octal base.
您正在使用
(int)
显式进行类型转换,最好使用
intval()。
you are explicitly typecasting using
(int)
Better use
intval().
所以,
Therefore,