我在我的模型中定义了一个数组的自定义属性:
protected $_types;
返回查看模型为数组的对象集合,其中包含数组$ _types。
我的问题是如何在视图中访问此属性?
在视图中,我创建了一个foreach来显示每个对象:
<?php foreach ($this->results as $item)
那么如何访问这个数组的每个位置?
问候。
答案 0 :(得分:0)
您必须将值(值数组或对象数组)从模型中返回到Controller,然后从Controller中返回,您必须将其分配给要在View页面上使用的视图变量。
我希望这种方式有效。
答案 1 :(得分:0)
因为您将变量$ _type的范围设置为protected,所以它只能在模型类,父类和模型类的子元素中引用。
当您在视图对象中引用模型时,模型对象的实例将注入视图,并且您无法直接引用受保护的属性。你需要在模型中填充魔术方法__get,例如:
public function __get($name){
if (is_string($name && 'result' == $name)){
return $this->_type;
}
}
我认为您需要阅读Zend Framework的文档,以明确如何在View对象或View Model对象中注入模型。