PHP动态下拉菜单

PHP动态下拉菜单,php,dynamicform,Php,Dynamicform,我试图创建一个下拉列表,其中包含由文件确定的预选值。不幸的是,我不确定我的语法是否正确。以下是我目前掌握的情况: <select id="SampleRate", name="SampleRate"> <?php $controller_file = 'controllerSetup.conf'; $comment = "#"; $fp = fopen($controller_file, "r"); while (!feof($fp)

我试图创建一个下拉列表,其中包含由文件确定的预选值。不幸的是,我不确定我的语法是否正确。以下是我目前掌握的情况:

<select id="SampleRate", name="SampleRate">

    <?php

    $controller_file = 'controllerSetup.conf';
    $comment = "#";
    $fp = fopen($controller_file, "r");
    while (!feof($fp)) {
        $line = trim(fgets($fp));
        if ($line && !ereg("^$comment", $line)) {
            $pieces = explode("=", $line);
            $option = trim($pieces[0]);
            $value = trim($pieces[1]);
            $controller_values[$option] = $value;
        }
    }
    fclose($fp);

    $sampleRates = array("48", "96", "192", "350");
    foreach ($sampleRates as $r) {
        if ($r == $controller_values["SampleRate"]) {
            echo ("<option value=$r selected>selected</option>");
        } else {
            echo ("<option value=$r>not selected</option>");
        }
    };
    ?>

</select>


不幸的是,查看在我的浏览器中生成的html,只生成一个“未选择”选项。我如何让它产生四个选项?我尝试用一个简单的
if($r==“48”)
替换foreach中的“if”语句,但没有效果。我的echo语句语法正确吗?

在HTML属性值周围使用双引号
echo'selected';
并且不要在类似
echo
的语言结构周围写括号。是否应该使用
selected=“selected”“
在所选的
tag@Chris从HTML5标准开始,只写
selected
是非常好的。尝试了这一点,仍然只生成一个选项:if($r==“48”){echo'selected';}否则{echo'not selected';}(作为旁注,如何将代码格式化为代码?这里所有代码都被固定在一行中…)