生成 4 位序列号,从给定数字开始,保持前导 0

问题描述 投票:0回答:2

我正在尝试从任何给定数字开始生成 4 位序列号。我卡住的地方是保持前导 0,因为我一直需要 4 位数字。这是我的代码。

$start = '0520';
for($i = 0; $i <= 100; $i++) {
    echo ($start + $i) . ',';
}

它给我这样的输出..

520,521,522,523,524,525,526,527,528,529,530,531,532,
等等..

因此我在 SO 中尝试了几个答案,但我最接近的是有 5 位数的数字

$start = '0520';
for($i = 0; $i <= 100; $i++) {
   echo sprintf('%05d', ($start + $i)) . ',';
}

输出以

00520
开头的5位序号。

生成保持前导 0 的 4 位序列号的最佳方法是什么?

谢谢

php for-loop printf
2个回答
2
投票

解决方案,很简单,就是用

echo sprintf('%04d', ($start + $i)) . ',';

我想你错过了 04 :D


1
投票

试试这个

$start = 520;
$generatedNumbers = [];
for ($i = 0; $i <= 100; $i++) {
    $generatedNumbers[] = '0' . $start+$i;
}

print_r($generatedNumbers);
© www.soinside.com 2019 - 2024. All rights reserved.