這應該可以做到。只需將您的輸出存儲在變量中。 爲您的頂級定義一個,其餘的定義一個。 在循環之後,您只需使用echo按照所需的順序輸出它們。
$smode = "fade";
<select name='smode'>
<?php
$modes = array('horizontal', 'vertical', 'fade');
$i = 0;
$options = '';
$topOption= '';
while($i < 3){
if($modes[$i] == $smode) {
$topOption = "<option value='$modes[$i]' selected='selected'>$modes[$i]</option>"
} else {
$options .= "<option value='$modes[$i]'>$modes[$i]</option>";
}
$i++;
}
echo $topOption . $options;
?>
</select>
另外,請閱讀for循環。
$smode = "fade";
<select name='smode'>
<?php
$modes = array('horizontal', 'vertical', 'fade');
$options = '';
$topOption= '';
for($i =0; $i < 3;$i++){
if($modes[$i] == $smode) {
$topOption = "<option value='$modes[$i]' selected='selected'>$modes[$i]</option>"
} else {
$options .= "<option value='$modes[$i]'>$modes[$i]</option>";
}
}
echo $topOption . $options;
?>
</select>
甚至可以考慮foreach:
$smode = "fade";
<select name='smode'>
<?php
$modes = array('horizontal', 'vertical', 'fade');
$options = '';
$topOption= '';
foreach($modes as $modeItem){
if($modeItem == $smode) {
$topOption = "<option value='$modeItem' selected='selected'>$modeItem</option>"
} else {
$options .= "<option value='$modeItem'>$modeItem</option>";
}
}
echo $topOption . $options;
?>
</select>
在選擇是否聲明=蘇氨酸添加「選擇」 –
你怎麼知道哪一個應該選擇?此外,更改選擇選項的順序通常不會形成良好的用戶體驗。 – David