我正在阅读关于zend view partials的zend框架文档
如果您的模型是对象,您可以 想把它作为一个对象传递给 部分脚本,而不是 将其序列化为一个数组 变量。您可以通过设置来完成此操作 'objectKey'属性 适当的帮手:
// Tell partial to pass objects as 'model' variable $view->partial()->setObjectKey('model');
但这是做什么的。我何时使用它以及如何使用它。
答案 0 :(得分:4)
我对此并不是100%肯定,但从我所看到的来源和文档来看,渲染部分的标准行为是以关联数组的形式将值传递给它。这允许使用数组键将值绑定到变量。
echo $this->partial('partial.phtml', array ('person' => 'joe');
// in my partial..
<h1><?php echo $this->person; ?></h1> //<h1>Joe</h1>
如果你传递一个对象作为第三个参数(即partial('partial.phtml', $myobject);
),Zend_View_Partial将自动序列化一个关联数组中的该对象,或者通过toArray()
的自定义实现,或者只是抓取它公共财产通过get_object_vars()
。
但是,如果要将整个对象作为对象传递,则需要设置变换为变量的数组键以供部分引用。
$this->partial()->setObjectKey('myobject');
echo $this->partial('partial.phtml', $myobject);
这种方法比partial('partial.phtml', array( 'myobject' => $myobject)
有什么好处,我不确定。或者我可能会错误地解释文档。
答案 1 :(得分:0)
如数组中的键(key =&gt; value)?