0
$second= 3113;
for ($i = 0000; $i < 7000; $i += 100) { 
     $a=$second.$i;// 31130
     ...
}

これは出力します:

31130
3113100
3113200

必要なもの:

31130000 
31130100 
31130200 

これをどのように解決しますか?

4

2 に答える 2

4

数値は常にゼロがトリミングされて表示されます。sprintf次のように、特定の数のゼロを強制できます。

$a = $second.sprintf("%04s",$i); // 31130000
于 2013-03-05T17:11:22.720 に答える
0

代わりに次のコードを使用してください。

$second= 3113;
for ($i = 0000; $i < 7000; $i += 100) { 
     $a=$second.($i>0?($i>=1000?$i:"0".$i):"0000");// 3113000
     ...
}

$iこれはが 0 より大きいかどうかをチェックします。そうでない場合は、代わりに「0000」を出力します。

$iが 1000 未満の場合、先頭に 0 が追加されます。

于 2013-03-05T17:12:53.530 に答える