使用数组作为值下载codeigniter

pra*_*tri 0 html php codeigniter

我在$ categories变量中返回了result_array(),现在我想创建一个下拉菜单.但是如果我直接使用变量,那么将显示数组的所有元素.但是我只想显示名称并将其id保持为值.我该怎么做?

$options = $categories;
echo form_dropdown('category', $options);
Run Code Online (Sandbox Code Playgroud)

我想要类似的东西

<select name="category">
<option value="1"> ABC </option>
..... 
<option value="10"> NNNC </option>
</select>
Run Code Online (Sandbox Code Playgroud)

Nik*_*vic 5

$ options数组中的键不是数据库行的实际ID.

所以你的$ options数组看起来像这样:

Array(
'0' => array('id'=>'10', 'value'=>'someval1'),
'1' => array('id'=>'22', 'value'=>'someval2'),
'2' => array('id'=>'36', 'value'=>'someval3'))
Run Code Online (Sandbox Code Playgroud)

要看到这个,请print_r($options);在echo之前调用.

要进行真正的下拉列表,您应该创建如下所示的辅助函数:

function my_form_dropdown($name, $result_array){
    $options = array();
    foreach ($result_array as $key => $value){
        $options[$value['id']] = $value['value'];
    }
    return form_dropdown($name, $options);
}
Run Code Online (Sandbox Code Playgroud)