我需要将多选项插入下拉列表,从我的数据库中的表中获取选项。我创建了如下元素:
$this->add(array(
'name' => 'company',
'type' => 'Zend\Form\Element\Select',
//'multiOptions'=> $options,
'options' => array(
'label' => 'Company',
),
'attributes' => array(
'style' => "float:right;",
),
));
我想从下拉列表中选择数据库表中的一些值。例如,我有实体联系人,我需要为联系人选择数据库中名为公司的表中的公司。
在阅读了 zend 框架的网站后,我尝试使用以下代码:
$params = array(
'driver'=>'Pdo_Mysql',
'host'=>'localhost',
'username'=>'root',
'password'=>'',
'dbname' =>'myDataBase'
);
$db = new \Zend\Db\Adapter\Adapter($params);
$sql= new Sql($db);
$select = $sql->select();
$select ->from('companies')
->columns(array('id','company_name'))
->order(" 'company_name' ASC");
我还在其他一些可以使用函数的网站上阅读:
$options = $sql->fetchPairs('SELECT id, name FROM country ORDER BY name ASC');
但它似乎在 Zend Framework 2 中不再存在。
请各位,帮我一把。如果代码不好并且您有更好的主意,请告诉我。
提前致谢!