renderViewHelper在Zend Framework中做了什么?

And*_*dan 3 zend-framework

琐碎,但我发誓,我无法在任何地方找到这些信息.

<?php $username = $this->form->username ?>
<?php echo $username->renderViewHelper() ?>
Run Code Online (Sandbox Code Playgroud)

renderViewHelper()在这做什么?

Ibr*_*mar 6

有时,您可能希望将Zend_Form与视图中的现有标记一起使用,例如,考虑在视图文件中找到的以下标记.

<form method="<?php echo $form->getMethod() ?>" action="<?php echo $form->getAction()?>">
    <div id="elements">
        <?php echo $form->element1->renderLabel() . $form->element1->renderViewHelper() ?>
        <?php echo $form->element2->renderLabel() . $form->element2->renderViewHelper() ?>
    </div>
</form>
Run Code Online (Sandbox Code Playgroud)

以下语法

$form->element1->renderLabel()
Run Code Online (Sandbox Code Playgroud)

将仅获取标签标签.没有花哨的包装标签或任何东西.同样如此

$form->element1->renderViewHelper()
Run Code Online (Sandbox Code Playgroud)

这只会获取输入(或任何指定的)元素标记.这样您就可以使用自己的现有标记嵌入表单,而不是允许zend_form自己创建标记.

有关更多信息,请访问此链接http://framework.zend.com/manual/en/learning.form.decorators.individual.html

希望这能帮助你.