Вы можете сделать это с помощью DOM , не касаясь HTML. Если это ваш HTML:
$template = <<< TPL
<select name="position">
<option value="left">Left</option>
<option value="right">Right</option>
<option value="centre">Centre</option>
</select>
TPL;
И это значение, которое было выбрано:
$value = 'right';
Вы можете сделать
$dom = new DOMDocument;
$dom->loadXml($template);
$xPath = new DOMXPath($dom);
$node = $xPath->query(sprintf('//option[@value = "%s"]', $value));
if($node->item(0)) {
$node->item(0)->setAttribute('selected', 'selected');
}
echo $dom->saveXML($dom->documentElement);
И это выведет:
<select name="position">
<option value="left">Left</option>
<option value="right" selected="selected">Right</option>
<option value="centre">Centre</option>
</select>