通常php for循环输出是1,2,3,4,5,6,7,8,9,10,11,但我在XML RPC代码中工作,其中日期使用如01,02,03,04,05,06,07,08,09
for ($i=1; $i<=20; $i++){
echo "The number is " . $i . "<br />";
}
输出:123.4567891011121314151617181920
,但我的要求是0102030405060708091011121314151617181920
str_pad
for ($i=1; $i<=20; $i++){
echo "The number is " . str_pad($i,2,0,STR_PAD_LEFT) . "<br />";
}
你总是可以运行一些代码来检查它是否只有一个数字(意思是小于10)
之类的for ($i = 1; $i <= 20; $i++){
if($i < 10) :
echo "The number is " . '0' . $i . "<br />";
else:
echo echo "The number is " . $i . "<br />";
endif;
}
我在if
语句中使用了语法糖,但是您也可以很容易地将冒号替换为花括号!希望这对你有帮助!
您可以使用str_pad将1-9之间的数字用0填充
$value = $i;
if ($i < 10) {
$value = str_pad($i, 2, "0", STR_PAD_LEFT);
echo "The number is " . $value . "<br />";
}
我会使用printf:
for ( $i = 1; $i <= 20; $i++ ){
printf( "The number is %02u <br />'n", $i );
}
02指定前导字符("0")的最小数目(2)。如果你需要更多的前导零,只需改变数字。我认为这是最易读的语法