繁体   English   中英

PHP范围使用两位数代替一位

[英]PHP range use two digit instead of one

我有以下代码使用php range创建一个数字从0-99的选择元素。 我试图将00添加到这样的范围中,但是没有运气:range(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>

在输出上。

<? printf('%02d', $trucknum); ?>

使用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>

$ trucknum是一个数字值,您将必须格式化输出以在需要时添加前导零。 参见http://php.net/manual/en/function.printf.php

这工作<?php echo sprintf('%02d', $i); ?> <?php echo sprintf('%02d', $i); ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM