2012-06-05 59 views
0

上述線從indexController的的init方法採取,我已經以下的教程一個小白問題對象運營商在Zend框架

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

。代碼示例是否真的意味着從來自zend_Controller_Action對象的_helper對象的viewRenderer對象執行「setNoRender」方法?或者是否有一個特定於Zend框架的代碼編寫約定,我不知道?

回答

1

它不是一個zend約定。它是一個PHP語法。

$ this引用了當前的obj。 使用 - >運算符可以訪問其屬性或方法。

代碼是否樣品的真正含義是從化Zend_Controller_Action 對象_helper對象從 ViewRenderer對象,實行「setNoRender」的方法?

是的你是對的。

$ this - > _ helper-> viewRenderer-> setNoRender();

這將禁用視圖,當您使用ajax請求時它非常有用。

FYI:Zend Controller action

的主要原因禁止ViewRenderer是,如果你根本就 不需要視圖對象或者如果你不通過視圖腳本 渲染(例如,使用動作控制器時以服務於諸如SOAP,XML-RPC或REST之類的web服務 協議)。在大多數情況下,您將不需要全局禁用ViewRenderer,只需在個別控制器或操作中選擇性地使用 。

+0

感謝Venu的詳細解答! –