我在控制器中访问了一个数组$pname
,当我写print_r($pname);
输出时:
Admin \ Model \ Provinces Object([id] => 4 [p_name] => Khyber Pakhtunkhwa [inputFilter:protected] =>)
我需要在视图中显示 Khyber Pakhtunkhwa :
我试过echo $pname['p_name']
;但它给我一个错误:
致命错误:未捕获错误:无法在C:中使用Admin \ Model \ Provinces类型的对象作为数组:...
那么我怎么能这样做,即从数组中访问特定数据。
答案 0 :(得分:1)
在您的情况下,$pname
NOT 是一个数组,它是Admin\Model\Provinces
类型的对象(您可以在打印调用的输出中清楚地看到)。 / p>
要访问简单php对象的特性,你有时可以使用数组表示法(在here on php.net上阅读更多内容),但在这种情况下,不允许在这种类型的对象上使用错误消息。
您可以使用箭头符号(如果已实现a magic getter)或使用类Admin\Model\Provinces
中提供的getter来访问对象中的对象属性。
这是基本的PHP内容我建议你在开始使用像Zend-Framework 2这样的复杂框架之前更熟悉PHP。