0

View Helpers 有一些初始的 helpers,比如 formButton 和 formText。

正如参考所说:

formText($name, $value, $attribs):创建一个<input type="text" />元素。

但我在我的电脑上发现了一些不喜欢的东西。我在视图文件中编写以下代码:

<?php 
echo $this->formText('email', 'you@example.com', array('size' => 32));
?>

HTML如下:

<input type="text" name="email" id="email" value="you@example.com" size="32">

最后没有'/'。应该是:

<input type="text" name="email" id="email" value="you@example.com" size="32"/>

那么有什么问题吗?我的版本是 ZF1.12 和 PHP5.4。

4

2 回答 2

3

不会。ZF 会检查您附加到视图的文档类型是否为 XHTML,并仅在为真时添加正斜杠。

查看 Zend_View_Helper_HtmlElement::getClosingBracket

if (!$this->_closingBracket) {
    if ($this->_isXhtml()) {
        $this->_closingBracket = ' />';
    } else {
        $this->_closingBracket = '>';
    }
}

return $this->_closingBracket;
于 2013-09-11T01:41:05.300 回答
1

这不是一个错误。输出取决于您的文档的文档类型。如果它是 XHTML 文档类型,它将输出,/>否则它将仅输出>结束标记。

检查 Zend_View_Helper_FormText 类

....
// XHTML or HTML end tag?
    $endTag = ' />';
    if (($this->view instanceof Zend_View_Abstract) && !$this->view->doctype()->isXhtml()) {
        $endTag= '>';
    }
....
于 2013-09-11T01:42:40.503 回答