2013-09-26 9 views
12

Mi sembra di essere bloccato con il mio sito Web, sto cercando di ottenere il numero di righe restituite dal database ma non sembra voler giocare a palla ... qualcun altro può vedere il problema?contando la quantità di righe restituite con una query in laravel

Questa è la mia domanda:

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

e questo è come sto "tentativo" per contare il numero di righe

$cfr = count($check_friend_request); 

ogni volta che provo a echo $ cfr restituisce 1, ma dovrebbe restituire 0 perché non è stata inviata una richiesta di amicizia. Ho probabilmente perso qualcosa di completamente ovvio, ma qualsiasi aiuto sarebbe fantastico! grazie!

risposta

22

Hai seguente codice

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

Dovrebbe essere

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

Quindi, è possibile utilizzare

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

Inoltre, count($check_friend_request) funzionerà perché restituisce un array di oggetti. leggi di più su Query Builder sul sito web Laravel.

+0

Sto concatenando stringhe utilizzando criteri che ha order_by e where clausola. Allora come posso usarlo nella query sopra. Conoscete un pattern di repository che possa essere utilizzato con il generatore di query di Laravel? – Chopra

7

Per contare risultato restituito dalla matrice in laravel, basta usare conteggio semplice per la serie cioè

echo count($check_friend_request); 
0

Se si utilizza un paginator:

$check_friend_request->total(); 

Se non si utilizza un Paginator:

count($check_friend_request); 

consultare la documentazione al https://laravel.com/docs/5.3/pagination

0

Prova questa speranza che ti sarà di aiuto.

$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); 
Problemi correlati