我面临着将最大数量除以自身的问题。例如,数字是6667880025043855最大长度是 16,所以我将把它分成四个数字,每个数字有四个中断例子:6667880025043855所以我所做的是使用 substr 并将其除以四。代码:if (strlen($number) == 16) { // instaces if the max length is 16. echo $number1 = substr($number, 0, 4)."</br>"; echo $number2 = substr($number, 4, 8)."</br>"; echo $number3 = substr($number, 8, 12)."</br>"; echo $number4 = substr($number, 12, 16)."</br>";}但我的输出是:666788002504250438553855我做错了吗?PS:我还处于初学者阶段。
2 回答
犯罪嫌疑人X
TA贡献2080条经验 获得超4个赞
它应该是:
$number = '6667880025043855';
if (strlen($number) == 16) { // instaces if the max length is 16.
echo $number1 = substr($number, 0, 4)."</br>";
echo $number2 = substr($number, 4, 4)."</br>";
echo $number3 = substr($number, 8, 4)."</br>";
echo $number4 = substr($number, 12, 4)."</br>";
}
PIPIONE
TA贡献1829条经验 获得超9个赞
为什么不使用chunk_split将数字分成几部分?
$number=6667880025043855;
$length=4;
$chunks=chunk_split( strval($number), $length );
printf('<pre>%s</pre>',print_r($chunks,true));
将产生:
6667
8800
2504
3855
或者,如果您需要作为单独的变量:
$chunks=explode( PHP_EOL, chunk_split( strval( $number ), $length ) );
然后您可以访问每个号码,如下所示:
echo $chunks[1];// yields 8800 etc
- 2 回答
- 0 关注
- 172 浏览
添加回答
举报
0/150
提交
取消