我需要帮助在for循环中生成序列号

时间:2013-05-07 08:54:27

标签: php for-loop numbers sequence

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

如果for loop到达999,那么在for循环到达999 for循环之后自动添加的方法应该像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>';
}

3 个答案:

答案 0 :(得分: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
}

答案 1 :(得分:0)

试试这个:

$num=rand(500, 999);
for ($i = 500; $i <=$num ; $i++) {
    echo str_pad($i,5,'0', STR_PAD_LEFT);
}

答案 2 :(得分: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);
    }