Вот пример кода.
<?php
$options = array('option1' => 'Option 1', 'option2' => 'Option 2', 'option3' => 'Option 3');
$myselect = 'option2';
?>
<select name="myselect">
<?php
foreach($options as $key => $value) {
echo sprintf('<option value="%s" %s>%s</option>', $key, $key == $myselect ? 'selected="selected"' : '', $value);
}
?>
</select>
Если вы делаете такие вещи регулярно, это намного более аккуратно в функции, или вы могли бы даже создать помощник класса Form.
Вот основная функция выбора:
<?php
function form_select($name, $options, $selected) {
$html = sprintf('<select name="%s">', $name);
foreach($options as $key => $value) {
$html .= sprintf('<option value="%s"', $key);
if ($selected == $key)
$html .= ' selected="selected"';
$html .= sprintf('>%s</option>', $value);
}
$html .= '</select>';
return $html;
}
Затем вы можете создать любой выбор, просто позвонив:
echo form_select('myselect', $options, $selected);
Вы можете легко заставить функцию обрабатывать другие атрибуты, такие как стиль, класс и идентификатор.