请帮助我,我是zend框架和OPP的新手。 我正在构建一个viewhelper类,其中包含一个隐藏的输入(称为:ITinputhidden),从FormHidden扩展(使用Zend \ Form \ View \ Helper \ FormHidden并使用Zend \ Form \ Element)。我还在Module.php中声明了这个类(函数:getViewHelperConfig)。但访问时会出现警告:
严格标准:ITEquip声明\ Form \ View \ Helper \ FormHidden :: __ invoke()应与Zend \ Form \ View \ Helper \ FormInput :: __ invoke(Zend \ Form \ ElementInterface $ element = NULL)兼容第10行的C:\ xampp \ htdocs \ itequip.mvn \ library \ ITEquip \ Form \ View \ Helper \ FormHidden.php
我的视图助手中的方法魔法__invoke可能因为Zend中的__invoke不兼容。 (在viewhelper的__invoke方法中,我使用2个varibales:$ name和$ value,但Zend \ Form \ ElementInterface的__invoke中只有一个变量($ element = NULL)。但是我无法解决它。 我该怎么办?
请看我的代码: 我的viewhelper文件(FormHidden.php):
namespace ITEquip\Form\View\Helper;
use Zend\Form\View\Helper\FormHidden as ZendFormHidden;
use Zend\Form\Element;
class FormHidden extends ZendFormHidden
{
public function __invoke($name,$value) {
$element = new Element\Hidden($name);
$element->setValue($value);
return $this->render($element);
}
}
Module.php文件
public function getViewHelperConfig(){
return array(
'invokables' =>array(
'ITFormHidden' => '\ITEquip\Form\View\Helper\FormHidden',
)
);
}
Index.phtml文件
<?php
//CREATE INPUT HIDDEN
$inputHiddenOrder = $this->ITFormHidden('order','ASC');
$inputHiddenOrderby = $this->ITFormHidden('order_by','colorcode');
$strInputHidden = $inputHiddenOrder. $inputHiddenOrderby;
echo $strInputHidden;
?>
请帮帮我。 先谢谢你。