计算数组php中的重复对象

时间:2019-01-10 22:14:05

标签: php arrays loops duplicates counting

我有一个从larvel sql查询中检索到的对象数组:

$c=[{hashtag_id: 5}, {hashtag_id: 5}, {hashtag_id: 13}, {hashtag_id: 2}, {hashtag_id: 13},…]
0: {hashtag_id: 5}
1: {hashtag_id: 5}
2: {hashtag_id: 13}
3: {hashtag_id: 2}
4: {hashtag_id: 13}
5: {hashtag_id: 5}
6: {hashtag_id: 13}
7: {hashtag_id: 5}
8: {hashtag_id: 12}
9: {hashtag_id: 13}
10: {hashtag_id: 2}
11: {hashtag_id: 12}
12: {hashtag_id: 13}
13: {hashtag_id: 5}
14: {hashtag_id: 12}
15: {hashtag_id: 13}

我正在尝试对数组进行计数,并对每个hashtag_id进行计数。

预期输出:

hashtag_id: 2 {2};
hashtag_id: 5 {5}; 
hashtag_id: 12 {3}; 
hashtag_id:13 {6};

或 预期输出:

hashtag_id: 2 count: 2;
hashtag_id: 5 count: 5;
hashtag_id:12 count: 3;
hashtag_id:13 count: 5;

什么是最好的方法?

我的代码:

for($j=0;$j<count($result2);$j++){
                $all2 = HashtagFollow::select('hashtag_id')->where('user_id', $result2[$j]->user_id)->whereNotIn('hashtag_id', $all)->orderBy('hashtag_id')->get();
                array_push($c, $all2);
            }
        $c1 = array_flatten($c);
$d = (array_count_values(array_column($c1, 'hashtag_id')));
return ($d);

0 个答案:

没有答案