$y = 013;
echo $y + 5; //this result in 16
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚它的ans是16?任何人都可以帮忙吗?
因为013不是十进制(基数为10).它是八进制(基数为8).十进制的值是:(0*8 ^ 2)+(1*8 ^ 1)+(3*8 ^ 0)= 0 + 8 + 3 = 11
当加到5时,它给出正确的(尽管意外,至少是你)16的结果.
故事的寓意:除非你知道这意味着什么,否则不要在数字前加0