Php 致命错误:无法将用户类型的对象用作数组

Php 致命错误:无法将用户类型的对象用作数组,php,function,Php,Function,应用程序上的用户通过电子邮件登录。此电子邮件处于会话中。在这个会话中,我试图获得更多关于该用户的信息,以便打印出(sur)姓名和化身。当我在导航栏中执行此操作时,他做得很好,但在页面本身上会出现以下错误:“致命错误:无法将User类型的对象用作数组” 我做错了什么 PHP: 功能: public function getUserInfoByEmail($email) { $db = new Db(); $select = "SELECT * FROM tblusers WHERE

应用程序上的用户通过电子邮件登录。此电子邮件处于会话中。在这个会话中,我试图获得更多关于该用户的信息,以便打印出(sur)姓名和化身。当我在导航栏中执行此操作时,他做得很好,但在页面本身上会出现以下错误:“致命错误:无法将User类型的对象用作数组”

我做错了什么

PHP:

功能:

public function getUserInfoByEmail($email)
{
    $db = new Db();
    $select = "SELECT * FROM tblusers WHERE email = '" . $_SESSION["email"] . "';";
    $result = $db->conn->query($select);
    return $data=$result->fetch_assoc();

}

这是因为您使用的是
$user
对象作为数组(错误消息清楚地表明了这一点)

更改:

var_dump($user['avatar']);
为此:

var_dump($user->avatar);

唯一的错误是在var_转储中,您试图以数组的形式访问对象。现在我明白了,答案已经加上了。看一看,它是不言自明的,它给我的结果是空的。。但我不明白。我在另一个地方也做了同样的事情,恩,这很好吗?@MarnixVerhulst如果它给了你
null
,那么可能是因为它实际上是
null
?这也可能是因为对象中不存在化身。尝试
var\u转储($user)
并查看类中是否定义了
avatar
属性。感谢提示。。。现在可以工作了:)对不起,我没有检查
var_dump($user->avatar);