为什么PHP substr函数返回错误的值?

为什么PHP substr函数返回错误的值?,php,Php,下面是示例代码: <?php $number = 0130; $a1 = substr($number,0,1); $a2 = substr($number,1,1); $a3 = substr($number,2,1); $a4 = substr($number,3,1); $a = [$a1,$a2,$a3,$a4]; echo $a1; 因为0130是一个(因为0前缀),它的实际值是十进制88。(只需尝试echo$number

下面是示例代码:

<?php

$number = 0130;
$a1     = substr($number,0,1);  
$a2     = substr($number,1,1);
$a3     = substr($number,2,1);
$a4     = substr($number,3,1);
$a      = [$a1,$a2,$a3,$a4];

echo $a1;   

因为
0130
是一个(因为
0
前缀),它的实际值是十进制
88
。(只需尝试
echo$number;
并亲自查看即可。)

因此
substr('88',0,1)
8

0130
是一个值为
88

将数字置于引号之间(即使将其转换为字符串也会转换为
88
):


您好,亲爱的,但是variabel$number是从提交的表单中获取的。如何将其转换为字符串?您好@willyw2k,请显示相关代码,因为当我试图重现您的问题时,我得到了预期的输出。
$number = '0130';