面试问题:在php中,123==0123吗?
2022-08-30 18:39:11
我已经回答它是错误的。然后他问为什么?我无法回答。任何人都可以做出答案吗?我非常有兴趣学习它。
我已经回答它是错误的。然后他问为什么?我无法回答。任何人都可以做出答案吗?我非常有兴趣学习它。
此代码:
var_dump(123);
var_dump(0123);
将得到你:
int 123
int 83
这是因为 是 八进制表示法 (因为开头的 0
),而 是十进制。0123
123
有关详细信息,可以查看手册的整数部分。
一个更棘手的问题是询问 和 ,例如:79
079
var_dump(79);
var_dump(079);
会得到你 :
int 79
int 7
(9
不是八进制的有效数字 ;-) )
在数字前面加上八进制(以 8 为基数)的前缀,这与表示十六进制(以 16 为基数)的方式大致相同。0
0x