在ZF2中如何使视图函数在控制器中运行

Ben*_*ton 4 php zend-controller zend-view zend-framework2

我希望视图文件的功能也在控制器文件中运行.

例如,我想$this->escapeHtml()通过某些方式在视图文件中单独运行,以便在控制器中运行$this->...->escapeHtml()

这可能吗?请帮助.

Sto*_*mov 24

您需要获取ViewHelperManager并解压缩EscapeHtml帮助程序.这是一个如何从控制器执行此操作的示例:

$viewHelperManager = $this->getServiceLocator()->get('ViewHelperManager');
$escapeHtml = $viewHelperManager->get('escapeHtml'); // $escapeHtml can be called as function because of its __invoke method       
$escapedVal = $escapeHtml('string');
Run Code Online (Sandbox Code Playgroud)

请注意,建议在视图脚本中转义并显示输出,而不是在控制器中.