「ビューのレンダリング」とは何なのか理解できません。Zend Frameworkのマニュアルを読んでいますが、この用語の使用法はたくさんあります。
ビューを自動的にレンダリングする:
このヘルパーは、ビューオブジェクトをコントローラーに挿入するだけでなく、ビューを自動的にレンダリングします。
ビューのレンダリングを無効にします。
個々のビューのレンダリングを無効にすることもできます
render()
ビュースクリプトをレンダリングします。
render()はビュースクリプトをレンダリングします。
そのテンプレートをサブディレクトリにレンダリングします
$ actionに値を渡すと、そのテンプレートが/[controller]/サブディレクトリにレンダリングされます。
等々。
私はそのrender()
方法を見つけました。実際、の多くのコンポーネントクラスにZend_Controller
はrender()
メソッドがあります。しかし、とにかく彼ら全員がとにかくZend_View_Abstract
クラスから1人だけを呼び出します。そして、その実現で私が見ることができた唯一のことは、それがhtml-scriptを出力バッファに入れるだけのように見えるということです:
public function render($name) {
// find the script file name using the parent private method
$this->_file = $this->_script($name);
unset($name); // remove $name from local scope
ob_start();
$this->_run($this->_file);
return $this->_filter(ob_get_clean()); // filter output
}
残念ながら、この_run()
メソッドは実現されておらず、何をする必要があるのか、スコープにスクリプトを含める方法がわかりません。これは、インクルードとはどういう意味include_once("/myScritp.php")
ですか?
/**
* Use to include the view script in a scope that only allows public
* members.
*
* @return mixed
*/
abstract protected function _run();
では、「ビューをレンダリングする」とはどういう意味ですか?スクリプトを含めて出力バッファに入れ、変数(return ob_get_clean()
)に入れてください。