-1

我需要帮助才能在我有代码中生成序列号,for loop但它不能正常工作,因为我想这样做它正在生成随机数?

如果自动for loop到达999然后如何在for循环到达999for循环后添加应该是这样的999+1=1000+1=10001

我想要脚本生成这样的数字

500,501,502,503,....so on till 999

这是我的代码

$numbers = range(500, 999);
foreach ($numbers as $i) {
echo $say = str_pad($i, 5, "0",  STR_PAD_LEFT).'<br>';
}
4

3 回答 3

3

在您的范围内使用 for 循环。并使用str_pad()

for ($i = 500; $i < 1000; $i++) {
     $say = str_pad($i, 5, "0", STR_PAD_LEFT);
}

并与range()

$numbers = range(500, 999);
foreach ($numbers as $i) {
     $say = str_pad($i, 5, "0", STR_PAD_LEFT);
}

编辑:我不清楚在达到 999 时如何以及为什么要再次从 500 开始,但您可以将上述内容包装在:

while (true) {
    // One of the above solutions
}

警告:以上将创建一个无限循环!

尝试这样的事情:

$h = 0;
while ($h < 10) {
    // One of the above solutions
    $h++
}

或者

for ($h = 0; $h < 10; $h++) {
    // One of the above solutions
}
于 2013-05-07T08:59:11.780 回答
0

我想这就是你要找的:

    $seed=rand(500, 999);

    for ($i = 0; $i <500 ; $i++)
    {           
       $num=500+($seed+$i)%500;
       $say = str_pad($num,5,'0', STR_PAD_LEFT);
    }
于 2013-05-07T09:15:06.573 回答
0

尝试这个:

$num=rand(500, 999);
for ($i = 500; $i <=$num ; $i++) {
    echo str_pad($i,5,'0', STR_PAD_LEFT);
}
于 2013-05-07T09:02:10.430 回答