У меня есть простой выпадающий список:
<select name="day" id="day">
<?php
for ($i=1; $i<=31; $i++){
echo "<option value=\"" . $i . "\">" . $i . "</option>";
}
?>
</select>
Что мне нужно сделать, это добавить начальный ноль к номерам от 1 до 9. Я не думаю, что могу использовать спринт или пэд здесь? Любые советы приветствуются.
Другой вариант
<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)
для форматирования строк.
Вы можете использовать str_pad в PHP
<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>
<?php
$leadingZero;
for ($i=1; $i<=31; $i++){
if($i <= 9){
$leadingZero = 0;
}
echo "<option value=\"" . $leadingZero . $i . "\">" . $leadingZero. $i . "</option>";
}
?>