我正忙于处理 Zend_Form 对象。
我正在构建一个用于创建新发票的表单。

正如您在上图中所见,它是一个表单,在页面的不同位置和 HTML 代码中具有多个不同的输入字段。
通常你会使用装饰器来做到这一点,但我认为这不是一个可取的情况。
插入新 HTML 的按钮会创建具有相同名称但末尾带有 [NUMBER] 的新输入字段(创建数组)。
我认为最好在视图脚本中手动添加字段(伪代码:echo Zend_Form_Text_Element->toHtml();..
谁能给我建议如何让它正常工作?
我正忙于处理 Zend_Form 对象。
我正在构建一个用于创建新发票的表单。

正如您在上图中所见,它是一个表单,在页面的不同位置和 HTML 代码中具有多个不同的输入字段。
通常你会使用装饰器来做到这一点,但我认为这不是一个可取的情况。
插入新 HTML 的按钮会创建具有相同名称但末尾带有 [NUMBER] 的新输入字段(创建数组)。
我认为最好在视图脚本中手动添加字段(伪代码:echo Zend_Form_Text_Element->toHtml();..
谁能给我建议如何让它正常工作?
您应该使用视图脚本装饰器。这是一个很好的链接。
向下滚动到显示的部分:示例:使用 ViewScript 装饰器进行完全自定义
这是使用视图脚本构建的示例表单:
<h4>Please register with us!</h4>
<form action="<?= $this->escape($this->form->getAction() ?>"
      method="<?= $this->escape($this->form->getMethod() ?>">
<fieldset>
    <legend>Demographics</legend>
    <p>
        Please provide us the following information so we can know more about
        you.
    </p>
    <?= $this->form->age ?>
    <?= $this->form->nationality ?>
    <?= $this->form->income ?>
</fieldset>
<fieldset>
    <legend>User Information</legend>
    <p>
        Now please tell us who you are and how to contact you.
    </p>
    <?= $this->form->firstname ?>
    <?= $this->form->lastname ?>
    <?= $this->form->email ?>
    <?= $this->form->address1 ?>
    <?= $this->form->address2 ?>
    <?= $this->form->city ?>
    <?= $this->form->state ?>
    <?= $this->form->postal ?>
    <?= $this->form->phone ?>
</fieldset>
<?= $this->form->submit ?>
</form>
这样你就可以完全控制表单的 html 并且你不需要忍受装饰器的地狱:D