注意:尝试在php代码中获取非对象的属性

时间:2015-12-07 12:11:41

标签: php

为什么$results为NULL,我做错了?

我在$rows = $result->fetch_assoc();

中收到错误
class User{

    public $user_name;
    protected $_user_id;
    protected $_user_pwd;
    public $user_email;
    protected $_create_date;

    public  function selectUsers(){

        $db = Database::getInstance();
        $mysqli = $db->getConnection();

        $query = 'select * from tblusers';
        $result = $mysqli->query($query);

        if($result->num_rows)
        {
            $rows = $result->fetch_assoc();
            return $rows['$user_name'];
        }
    }

}

1 个答案:

答案 0 :(得分:0)

我看到你试图返回return $rows['$user_name'];你不能像['$ user_name']那样使用它而你必须使用$rows[$this->user_name];或者如果你想要返回所有用户那么你必须而是return $rows;

<强>更新

我发现你的代码还有一个问题,因为你选择了很多行,$rows = $result->fetch_assoc();你有$rows多维数组,所以你应该像这样循环它

echo "All Rows: <br>";
var_dump($rows); //to see how is inside
echo "<br>";

foreach($rows as $row){
     var_dump( $row ); //to see how is inside
}

所以$rows['name']中没有项目$rows,而是$rows[0]['name']