编码时我得到了意想不到的结果.
我不确定如何提出这个问题,所以我会输入我的代码和结果:
$variable = 012;
$variable2 = 12;
$variable3 = '012';
Run Code Online (Sandbox Code Playgroud)
当我回应变量时:
预期结果:
$variable: 12
$variable2: 12
$variable3: 012
Run Code Online (Sandbox Code Playgroud)
结果:
$variable: 10
$variable2: 12
$variable3: 012
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?
请参阅php的整数文档
然后你会看到以下内容:
To use octal notation, precede the number with a 0
Run Code Online (Sandbox Code Playgroud)
所以八进制12是十进制10
更多信息的文档
<?php
$a = 1234; // decimal number
$a = -123; // a negative number
$a = 0123; // octal number (equivalent to 83 decimal)
$a = 0x1A; // hexadecimal number (equivalent to 26 decimal)
Run Code Online (Sandbox Code Playgroud)