PHP 下拉列表 - 添加前导零

PHP Dropdown list - adding leading zero's

我有一个简单的下拉列表:

<select name="day" id="day">
    <?php
       for ($i=1; $i<=31; $i++){
            echo "<option value=\"" . $i . "\">" . $i . "</option>";
       }
     ?>
</select>

我需要做的是在数字 1 到 9 前加一个零。我认为我不能在这里使用 sprint 或 pad?欢迎任何建议。

<?php
       $leadingZero;
       for ($i=1; $i<=31; $i++){
           if($i <= 9){
              $leadingZero = 0;
           }
            echo "<option value=\"" . $leadingZero . $i . "\">" . $leadingZero. $i . "</option>";
       }
     ?>

另一种选择

<select name="day" id="day">
    <?php
       for ($i=1; $i<=31; $i++){
            echo "<option value=\"" . str_pad($i, 2, '0', STR_PAD_LEFT) . "\">" . str_pad($i, 2, '0', STR_PAD_LEFT) . "</option>";
       }
     ?>
</select>

您可以使用 sprintf("%02d", $number) 格式化字符串。

您可以在 PHP

中使用 str_pad
<select name="day" id="day">
    <?php
      $leadingZero;
       for ($i=1; $i<=31; $i++){
          if(i<10)
           $leadingZero =  str_pad($leadingZero,1,"0",STR_PAD_LEFT);
          echo "<option value=\"" . $leadingZero . $i . "\">" . $leadingZero. $i . "</option>";
   }
       }
     ?>
</select>