我有这个代码:
$thisTime = gmmktime(0, 0, 0);
for($i=0; $i<=95; $i++)
{
$perfTimeNumber = ($i+1);
$perfTimestamp = $thisTime;
$perfTime = date("H:i", $perfTimestamp);
echo '<option value="'. $perfTimeNumber .'" selected="'.$sel.'">' .$perfTime .'</option>';
$thisTime = $thisTime+(15*60);
}
这可以很好地生成一个选择输入,其中包含从 01:00 到 24:45 的选项,间隔为 15 分钟。但是,如果我更改代码并添加一个 if 语句,我会得到一些奇怪的结果......
$thisTime = gmmktime(0, 0, 0);
for($i=0; $i<=95; $i++)
{
$perfTimeNumber = ($i+1);
$perfTimestamp = $thisTime;
$perfTime = date("H:i", $perfTimestamp);
if ($perfTime == '19:30') {
$sel = "selected";
}
echo '<option value="'. $perfTimeNumber .'" selected="'.$sel.'">' .$perfTime .'</option>';
$thisTime = $thisTime+(15*60);
}
这个想法是(任意!)使选择输入默认为 19.30。上面的代码添加
selected = "selected"
到 19:30 之后的每个选项,而不仅仅是 19:30 选项。如果我将 if 语句稍微更改为 if ($perfTime = '19:30') { ...
ie,则使用单个=
而不是==
它会创建一组选项,所有选项的值都为 19:30。我究竟做错了什么?