-1

PHPの範囲を使用して0〜99の数字の選択要素を作成する次のコードがあります。range(00, 99) のように範囲に 00 を追加しようとしましたが、うまくいきませんでしたが、02 ではなく 2 のような 1 桁しか表示されません。これを変更するにはどうすればよいですか?

<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>
4

4 に答える 4

5

出力時。

<? printf('%02d', $trucknum); ?>
于 2013-02-01T20:58:36.830 に答える
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>
于 2013-02-01T20:58:45.947 に答える
1

$trucknum は数値です。必要に応じて先頭にゼロを追加して出力をフォーマットする必要があります。http://php.net/manual/en/function.printf.phpを参照してください。

于 2013-02-01T20:58:51.627 に答える
1

これはうまくいった<?php echo sprintf('%02d', $i); ?>

于 2014-11-19T06:20:48.850 に答える