0
public static function select($name, $options_array, $key_as_value=true, $selected="!NO!")
{
$html = "<select name='$name'>\n";
foreach($options_array as $key => $val)
{
$option_value = ($key_as_value) ? $key : $val;
$option_display = $val;
$selected = ($selected != "!NO!" && $selected == $option_value) ? " SELECTED" : "";
$option = "<option value='$option_value'$selected>$option_display</option>\n";
$html .= $option;
}
$html .= "</select>\n";
return $html;
}
这是我的PHP代码,它会生成一个SELECT元素,如果您通过$选中它将会选择所需的选项。问题是,将默认值设为“!NO”看起来非常难看。但是我不能将它设置为FALSE,因为FALSE是synonim为0,并且如果有一个值为“0”的选项,它将无法按预期工作。php函数返回一个select元素
对此有何建议?
如何空?您可以使用$作为参数和循环变量。你确定?如果其中一个val/option_value是“SELECTED”或空白,会发生什么情况? – 2011-12-17 04:05:55
`FALSE`不是`0`的同义词。是的,`0 == FALSE`,但`0`是`int`,`FALSE`是`bool`。因此`0!== FALSE`。有关更多信息,请参阅@dkamins的答案。 – 2011-12-17 04:07:39