在 Zend Framework 2 中将循环中的元素添加到 Zend Form

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);