在Zend框架中添加循环元素到Zend表单


Adding elements from loop to Zend Form in Zend Framework 2

当添加元素到Zend 2表单时,

  foreach($headers as $column)
            {
                $checkbox = new Element'Checkbox('checkbox');
                $checkbox->setLabel($column . "");
                $checkbox->setUseHiddenElement(true);
                $checkbox->setCheckedValue("true");
                $form->add($checkbox);
            }

我遇到了只添加最后一个元素的问题。通过逐步执行代码,我知道它正在多次运行循环,但是Zend Form的add()代码似乎只是映射最后一个元素,而不是添加所有元素。做这样的事情最好的方法是什么?

你需要给每个元素一个唯一的名字,而不仅仅是'checkbox'。

试试这个:

$checkbox = new Element'Checkbox($column);