我创建了自定义插入来获取数据库中的值列表。
现在我想使用这个数组创建一个下拉列表
这是我的选择列表
$this->add(array(
'name' => 'group_name',
'type' => 'select',
'attributes' => array(
'id'=>'group_name',
'class'=>'large',
),
'options' => array(
'label' => 'Select List',
'value_options' => array(
'1' => 'php',
'2' => 'java'
),
),
));
答案 0 :(得分:2)
你没有提供太多关于它实际是什么的信息,你有麻烦,但是现在我假设你很难将数据库值放入你的Select元素中。为此,请查看我的博客上的详细信息:
您需要了解的基本原理是简单的Depedency Injection。您需要将数据源(或数据本身)正确注入表单。这是使用Zend Framework 2的ServiceManager
完成的。
由于有许多不同的路径可供选择(甚至我的博客并未涵盖所有这些),在您提出要求之前,我不会详细介绍任何特定的路径。博客本身应该足以让你开始能够写出正确的SO-Question;)
答案 1 :(得分:0)
您需要帮助的部分是什么? HTML? PHP中的循环? HTML:
<form action="" method="get">
<select name="group_name">
<option value="1">php</option>
<option value="2">java</option>
</select>
</form>
PHP,用于group_name:
echo $array['name'];
循环选择值:
foreach($array['options']['value_options'] AS $key=>$option){
echo '<option value="'.$key.'">'.$option.'</option>';
}
像这样...... ???
答案 2 :(得分:0)
不要去做最难的事情 `在Controller中,添加
$urFormObject->get('selectOptionName')->setValueOptions($listArray);
Example:
$ formName-&GT;获得( 'GROUP_NAME') - &GT; setValueOptions($ listArray);`