codeigniter:无法访问对象属性

时间:2013-09-28 06:48:22

标签: codeigniter codeigniter-2

我的视图中有以下输出:

stdClass Object ( [course_id] => 13 [title] => Design Illustration for Beginners). 

这是在$ course对象上使用print_r()的结果。以下是Model中的代码:

function loadMyTaughtCourses($email)
    {
        $this->db->select('*');
        $this->db->where('email', $email);    
        $this->db->from('course');
        $query = $this->db->get();
        if ( $query->num_rows() > 0 ) 
        { 
          return $query->result(); 
        } else { 
            return FALSE;   
        }   

    }

这里的问题是我无法仅访问这些属性。我这样做了:

foreach($taughtCoursesInfo as &$course)
{
    echo $course->title . "<br>";
}

然后我明白了:

A PHP Error was encountered

Severity: Notice

Message: Trying to get property of non-object

Filename: views/profile.php

Line Number: 14

知道为什么吗?通常我做$ object-&gt;属性,这是有效的。

提前致谢,

1 个答案:

答案 0 :(得分:0)

当您将数据从控制器传递到视图时,它将被解压缩,并且数组中的所有项目都可以通过其键名直接访问,并且在您给定的示例中,我只有一个对象(print_r您的结果提到的)

stdClass Object ( [course_id] => 13 [title] => Design Illustration for Beginners)

它不是一个对象数组,因此可以在没有循环的情况下访问,例如

echo $taughtCoursesInfo->title;