我正在尝试创建一个PHP函数,该函数为Bootstrap 4表单输入下拉菜单生成代码。从JSON文件读取数据,并使用for循环将每一行附加到字符串变量。
代码:
$output = '<select class="custom-select" id="'.$element.'">';
$output = $output . '<option selected value="999">Select...</option>';
for($i=0;$i<sizeof($json_obj);$i++)
{
echo($i.' - '.$json_obj[$i]["name"]);
$output = $output . '<option value="'.$i.'">'.$json_obj[$i]["name"].'</option>';
}
$output = $output . '</select>';
for循环内的字符串追加仅工作一次。但是for循环可以正常工作,并且for循环内的'echo'函数也可以打印所有行。
[从循环中的'echo'函数打印出来:::
0 - Peter
1 - Sam
2 - John
3 - Helen
下拉菜单中的可用选项:::
Select...
Peter
HTML代码生成:::
<select class="custom-select" id="element">
<option selected value="999">Select...</option>
<option value="0">Peter</option>
</select>
所需的HTML代码:::
<select class="custom-select" id="element">
<option selected value="999">Select...</option>
<option value="0">Peter</option>
<option value="1">Sam</option>
<option value="2">John</option>
<option value="3">Helen</option>
</select>
请按如下所示的正确格式使用'。='
$output = '<select class="custom-select" id="'.$element.'">';
$output .= '<option selected value="999">Select...</option>';
for($i=0;$i<sizeof($json_obj);$i++)
{
echo($i.' - '.$json_obj[$i]["name"]);
$output .= '<option value="'.$i.'">'.$json_obj[$i]["name"].'</option>';
}
$output .= '</select>';