我有以下代码使用php范围创建一个0-99的数字选择元素。我试图将00添加到这样的范围而没有运气:范围(00,99)但它仍然只列出一个数字,如2而不是02.我该如何改变它?
<select name="Vehic" id="Vehic" >
<option value="">Truck</option>
<?php
foreach (range(0, 99) as $trucknum) { ?>
<option value="<?php echo($trucknum); ?>"><?php echo($trucknum); ?></option>
<?php } ?>
</select>
答案 0 :(得分:5)
输出。
<? printf('%02d', $trucknum); ?>
答案 1 :(得分:2)
使用str_pad():
echo str_pad($trucknum, 2, '0', STR_PAD_LEFT);
在您的代码中:
<select name="Vehic" id="Vehic" >
<option value="">Truck</option>
<?php
foreach (range(0, 99) as $trucknum) { ?>
<?php
$trucknumStr = str_pad($trucknum, 2, '0', STR_PAD_LEFT);
?>
<option value="<?php echo($trucknum); ?>"><?php echo($trucknumStr); ?></option>
<?php } ?>
</select>
答案 2 :(得分:1)
$ trucknum是一个数值,您必须格式化输出以在需要时添加前导零。见http://php.net/manual/en/function.printf.php
答案 3 :(得分:1)
这有效<?php echo sprintf('%02d', $i); ?>