2016-03-04 40 views
1

我想知道哪些是模型中列最重複的實例。Laravel統計最重複的項目

我有User模型,我會想知道這是最常用的他們

我有一個外鍵表支付,我保存payments_id支付類型。

$users_payments = scm\User::lists('payment_id'); 

有了這個,我得到["16","0","15","14","14","0","15","14"],在這些數字是每種類型支付的id,我想獲得三個重複最多的。

+0

你能告訴你的用戶和支付表結構? –

+0

當你有查詢要做,不知道要去哪裏時,首先在SQL中寫它,所以在你的情況下,你會使用GROUP BY的payment_id,COUNT和SORT BY,然後嘗試將它翻譯成Eloquent。 – PeterPan666

回答

0

好吧,如果你不想用雄辯的查詢做,你以後可以用標準的PHP數組函數處理數組:一個項目的

$users_payment = scm\User::lists('payment_id'); 

array_count_values()計數出現

$occurrences = array_count_values($user_payment); 

現在來排序從高到低與arsort()

arsort($occurrences); 

和採取的第一個3 array_slice():

$items = array_slice($occurrences, 0, 3); 
+0

我已經試過,問題是array_count_values函數只適用於int和字符串,我認爲它應該得到這個,但它顯示我的錯誤 – user3557451