for($i=0001;$i<=1000;$i++){
    if($i<0010){
        echo "000".$i;
        echo "\n";
    }
    else if($i<0100){
        echo "00".$i;
        echo "\n";
    }
    else if($i<1000){
        echo "0".$i;
        echo "\n";
    }
    else{
        echo $i;
        echo "\n";
    }
}

解决方案 »

  1.   

    以上写得有点问题修改如下:
    for($i=0001;$i<=1000;$i++){
        if($i<0010){
            echo "000".$i;
            echo "\n";
            continue;
        }
        else if($i<0100){
            echo "00".$i;
            echo "\n";
            continue;
        }
        else if($i<1000){
            echo "0".$i;
            echo "\n";
            continue;
        }
        else{
            echo $i;
            echo "\n";
        }
    }
      

  2.   

    <?
    for($i=1;$i<=1000;$i++)
    {
    printf("%04s",$i);
    print"<br>";
    }
      

  3.   

    那如果我是想得到$i形如0001,0002。
    意思就是说不是用打印,也就是说不用printf函数,
    那怎么办?/
      

  4.   

    for($i=1;$i<=10;$i++)
    {
    $j=sprintf("%04s",$i);
    print"$j<br>";
    }