2013-09-11 57 views
0

视图助手有一些初始助手,比如formButton和formText。这是Zend Framework的Zend_View的错误吗?

作为参考表示:

FORMTEXT($名称,$值,$ attribs):创建一个<input type="text" />元件。

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

<?php 
echo $this->formText('email', '[email protected]', array('size' => 32)); 
?> 

的HTML是如下:

<input type="text" name="email" id="email" value="[email protected]" size="32"> 

没有一个 '/' 在end.It应该是:

<input type="text" name="email" id="email" value="[email protected]" size="32"/> 

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

回答

3

编号ZF检查您添加到视图中的文档类型是否为XHTML,并且只有在这种情况为真时才添加正斜杠。

退房Zend_View_Helper_HtmlElement :: getClosingBracket

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

return $this->_closingBracket; 
1

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

检查Zend_View_Helper_FormText类

.... 
// XHTML or HTML end tag? 
    $endTag = ' />'; 
    if (($this->view instanceof Zend_View_Abstract) && !$this->view->doctype()->isXhtml()) { 
     $endTag= '>'; 
    } 
....