首页 > 解决方案 > 试图在 laravel 5.6 中获取非对象的属性

问题描述

我从数据库中获取数据:

$user = DB::table('view_users')->where([
                            'id'        => $friend->user_id,
                            'type'      => $friend->user_type,
                            'del_flg'   => 0,
                            'status'    => 1
            ])->first();
$username = $user->username;

但我有一个错误:

Trying to get property 'username' of non-object

当我使用dd($user->username)时,它仍然有结果作为字符串。在我使用var_dump($user);exit;检查 varible$user的类型后,结果是一个对象。

你能帮我找出问题吗?非常感谢你

标签: phplaravellaravel-5eloquent

解决方案


您应该检查用户是否有价值。

if ($user) {
 $username = $user->username;
} else {
 // add your logic here
}

推荐阅读