2013-09-26 12 views
12

Wygląda na to, że zatrzymałem się na mojej stronie, próbuję uzyskać liczbę wierszy zwróconych przez bazę danych, ale wydaje się, że nie chcę grać w piłkę ... Czy ktoś może zobaczyć problem?zliczanie ilości wierszy zwróconych z zapytaniem w laravel

To moje zapytanie:

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

i to jak ja "próby", aby policzyć liczbę wierszy

$cfr = count($check_friend_request); 

gdy próbuję echo $ CFR zwraca 1, ale powinien zwrócić 0, ponieważ prośba o przyjęcie nie została wysłana. Przekonałem się, że przegapiłem coś zupełnie oczywistego, ale jakakolwiek pomoc byłaby fantastyczna! Dziękuję Ci!

Odpowiedz

22

Masz następujący kod

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

Powinno być

$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(); 

Następnie można użyć

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

Również count($check_friend_request) będzie działać, ponieważ zwraca tablicę obiektów. więcej informacji na temat Query Builder na stronie internetowej Laravel.

+0

Łączę ciągi znaków przy użyciu kryteriów z klauzulami order_by i where. Jak mogę go użyć w powyższym zapytaniu. Czy znasz jakiś wzór repozytorium, którego mogę użyć z narzędziem Laravel query builder? – Chopra

7

Aby policzyć zwrócony wynik z tablicy w laravel, wystarczy użyć zwykłego liczenia na tablicy tj

echo count($check_friend_request); 
0

Wypróbuj tę jedną nadzieję, że ci pomoże.

$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); 
Powiązane problemy