计算laravel中查询返回的行数

时间:2013-09-26 21:11:16

标签: php sql count laravel laravel-4

我似乎已经停止了我的网站,我正在尝试获取数据库返回的行数,但它似乎不想玩球...其他人是否可以看到问题?< / p>

这是我的疑问:

$check_friend_request = DB::table("friend_requests")
->where("request_sent_by_id", Auth::user()->user_id && "request_sent_to_id", $curUserID[1]);

这就是我“试图”计算行数的方式

$cfr = count($check_friend_request);

每当我尝试回显$ cfr时,它返回1但应该返回0,因为尚未发送好友请求。我很可能错过了一些完全明显的东西,但任何帮助都会很棒!谢谢!

4 个答案:

答案 0 :(得分:26)

您有以下代码

$check_friend_request = DB::table("friend_requests")
->where("request_sent_by_id", Auth::user()->user_id && "request_sent_to_id", $curUserID[1]);

应该是

$check_friend_request = DB::table("friend_requests")
->where("request_sent_by_id", "=", Auth::user()->user_id) // "=" is optional
->where("request_sent_to_id", "=",  $curUserID[1]) // "=" is optional
->get();

然后,您可以使用

if($check_friend_request){
    //...
}

此外,count($check_friend_request)将起作用,因为它返回一个对象数组。详细了解Laravel网站上的Query Builder

答案 1 :(得分:7)

要计算Laravel中数组的返回结果,只需对数组使用简单计数即

echo count($check_friend_request);

答案 2 :(得分:2)

如果您使用分页器:

$check_friend_request->total();

如果您不使用分页器:

count($check_friend_request);

请参阅https://laravel.com/docs/5.3/pagination

上的文档

答案 3 :(得分:0)

试试这个希望它会对你有所帮助。

$where=array('request_sent_by_id'=>Auth::user()->user_id,'request_sent_to_id'=>$curUserID[1]);
$check_friend_request = DB::table("friend_requests")->where($where)->get();
$count=count($check_friend_request);