我这里有一个愚蠢的问题;我正在尝试用一个表单,一个用户启动的时间选择,以及他们完成的时间,所以从逻辑上讲,我想将时间显示为: 00 01 02 ..我的意思是,2位数
但是虽然我把00作为$ i的初始值,但它仍然只显示1位数!
我可以将它设置为两位数吗?
谢谢!
<div class="interval">
<input type="checkbox" id="interval_check"/>
<div id="desde">
De: <select class="hores" name="hores" disabled>
<?php for ($i = 00; $i <= 23; $i++) : ?>
<option value="<?php echo $i; ?>"><?php echo $i; ?></option>
<?php endfor; ?>
</select>:<select class="minuts" name="minuts" disabled>
<?php for ($i = 00; $i <= 45; $i+=15) : ?>
<option value="<?php echo $i; ?>"><?php echo $i; ?></option>
<?php endfor; ?>
</select>
</div> <div id="fins">
fins: <select class="hores" name="hores" disabled>
<?php for ($i = 00; $i <= 23; $i++) : ?>
<option value="<?php echo $i; ?>"><?php echo $i; ?></option>
<?php endfor; ?>
</select>:<select class="minuts" name="minuts" disabled>
<?php for ($i = 00; $i <= 45; $i+=15) : ?>
<option value="<?php echo $i; ?>"><?php echo $i; ?></option>
<?php endfor; ?>
</select>
</div>
</div>
答案 0 :(得分:2)
只需使用sprintf为您创建字符串。
<?php for ($i = 0; $i <= 23; $i++) : ?>
<option value="<?php echo $i; ?>">
<?php echo sprintf("%02d", $i); ?>
</option>
<?php endfor; ?>
如果字符串少于2个字符,则会添加0。我假设你不关心价值。