renderViewHelper在Zend Framework中做了什么?

时间:2012-08-14 09:28:33

标签: zend-framework

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

<?php $username = $this->form->username ?>
<?php echo $username->renderViewHelper() ?>

renderViewHelper()在这里做什么?

2 个答案:

答案 0 :(得分: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>

以下语法

$form->element1->renderLabel()

将仅获取标签标签。没有花哨的包装标签或任何东西。

同样如此
$form->element1->renderViewHelper()

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

查看此链接以获取更多信息http://framework.zend.com/manual/en/learning.form.decorators.individual.html

希望这会对你有所帮助。

答案 1 :(得分:1)

它呈现表单元素,特别是表单元素中的viewHelper装饰器,它是呈现元素本身的元素(没有任何额外的标记)。