当我print_r
或var_dump
对象时,我看到了它的所有属性,当我对它执行函数时,例如$data-link()
,我得到了错误
Fatal error: Call to a member function link() on a non-object in xyx.php on line 281
public function throwBoxProduct($data,$type = false)
{
var_dump($data);
if($data->category->parent != 0){
....
}
......
<a href="'.$data->link().'" class="product_list_link"></a>
}
281行的代码如下:
<a href="'.$data->link().'" class="product_list_link"></a>
var_dump($data)
输出如下:
object(Products)#302 (17) {
["sizes"]=> bool(false) ["size"]=> bool(false) ["lay"]=> bool(false) ["lays"]=> bool(false) ["logo"]=> NULL
["categories"]=> array(0) { } ["_new":"CActiveRecord":private]=> bool(false)
["_attributes":"CActiveRecord":private]=> array(32) { ["id"]=> string(3) "321" ["category_id"]=> string(2) "15"
["sizes_id"]=> string(0) "" ["title"]=> string(15) "Far" ["intro"]=> string(0) "
}
您的$data
是NULL(或对象以外的东西),这就是为什么你得到这个错误。首先确保您已经正确地将$data
设置为Products对象