我正在使用Eloquent ORM创建应用程序,并且在选择数据库中的信息时遇到问题。

运行以下代码时:

public function index(){
    $user = Profile::select('idUser', 'userUrl', 'firstName')->where('userUrl', '=', $this->User)->orWhere('idUser', '=', $this->User)->first();
    if(!$user){
        echo "user not found";
    }else{
        echo "User found: ". $user['firstName'] . " - " . $user['userUrl'];
    }
}


如果存在,则将信息正确地写入变量,但如果不存在,则返回该表中记录的第一行。

我的桌子:
My Table

请帮我解决这个问题!

谢谢!

最佳答案

代码看起来不错,我使用了无数次这样的代码。

确保您的数据库记录不匹配,也许它可以正常工作,但是您感到困惑或

你可以做

$query = Profile::select('idUser', 'userUrl', 'firstName')->where('userUrl', '=', $this->User)->orWhere('idUser', '=', $this->User)->toSql();
dd($query);


检查查询是否正确。

07-24 09:31