como bien sabes.... para estos distintos elementos necesitas distintos atributos para seleccionar... o mas bien, para asignar un valor....
<select> necesita que algun <option> tenga el atributo
selected
<radio|checkbox> necesita el atributo
checked
bien, ya sabiendo esto como lo haríamos?
ejemplo de selección de checkbox/radio Código PHP:
<?php
foreach ($values as $id => $value)
{ ?>
<input type="checkbox" <?php echo ($value === $form->value($id)? 'checked="checked"': '') ?> name="<?php echo $id; ?>">
<?php
}
?>
ejemplo de selección de select > option Código PHP:
<?php
foreach ($values as $id => $value)
{ ?>
<option value="<?php echo $value; ?>" <?php echo ($value === $form->value('el_select')? 'selected="selected"': '') ?>>
<?php
}
?>
como puedes leer... usan un mismo comportamiento, que es muy simple de entender... bueno... así es mas o menos como se controla esto... suerte!