0

一个菜鸟问题

$this->_helper->viewRenderer->setNoRender();

上面的代码取自我一直在关注的教程中的 indexController 的 init 方法。代码示例是否真的意味着从 zend_Controller_Action 对象的 _helper 对象的 viewRenderer 对象执行“setNoRender”方法?或者是否有我不知道的特定于 zend 框架的代码编写约定?

4

1 回答 1

1

它不是一个 zend 约定。它是一种 PHP 语法。

$this 指的是当前的 obj。使用 -> 运算符,您可以访问其属性或方法。

代码示例是否真的意味着从 zend_Controller_Action 对象的 _helper 对象的 viewRenderer 对象执行“setNoRender”方法?

是的,你是对的。

$this->_helper->viewRenderer->setNoRender();

这将禁用视图,这在您使用 ajax 请求时非常有用。

仅供参考:Zend 控制器动作

禁用 ViewRenderer 的主要原因是您根本不需要视图对象,或者您不通过视图脚本进行渲染(例如,当使用操作控制器来提供 Web 服务协议(如 SOAP、XML-RPC 或 REST)时)。在大多数情况下,您永远不需要全局禁用 ViewRenderer,只需在单个控制器或操作中选择性地禁用。

于 2012-06-05T10:16:39.813 回答