0

初心者の質問

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

上記の行は、私がフォローしているチュートリアルのindexControllerのinitメソッドから抜粋したものです。コードサンプルは、実際には、viewRendererオブジェクトから「setNoRender」メソッドを実行し、zend_Controller_Actionオブジェクトから_helperオブジェクトを実行することを意味しますか?または、私が知らないzendフレームワークに固有のコード記述規則はありますか?

4

1 に答える 1

1

それはzendの慣習ではありません。そのPHP構文。

$thisは現在のobjを参照します。->演算子を使用すると、そのプロパティまたはメソッドにアクセスできます。

コードサンプルは、実際には、viewRendererオブジェクトから「setNoRender」メソッドを実行し、zend_Controller_Actionオブジェクトから_helperオブジェクトを実行することを意味しますか?

はい。それで合っています。

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

これにより、ビューが無効になります。ajaxリクエストを使用する場合に非常に便利です。

参考:ZendControllerアクション

ViewRendererを無効にする主な理由は、単にビューオブジェクトが必要ない場合、またはビュースクリプトを介してレンダリングしていない場合(たとえば、アクションコントローラーを使用してSOAP、XML-RPC、RESTなどのWebサービスプロトコルを提供する場合)です。 )。ほとんどの場合、ViewRendererをグローバルに無効にする必要はなく、個々のコントローラーまたはアクション内で選択的に無効にするだけです。

于 2012-06-05T10:16:39.813 に答える