需要帮助分组一个php数组

Sou*_*aby 2 php arrays merge grouping

我有一个mysql查询,它吐出以下数组:

Array
(
    [0] => stdClass Object
        (
            [item1] => foo 0
            [item2] => bar 0
            [catid] => 3
        )

    [1] => stdClass Object
        (
            [item1] => foo 1
            [item2] => bar 1
            [catid] => 7
        )

    [2] => stdClass Object
        (
            [item1] => foo 2
            [item2] => bar 2
            [catid] => 10
        )

    [3] => stdClass Object
        (
            [item1] => foo 3
            [item2] => bar 3
            [catid] => 7
        )

)
Run Code Online (Sandbox Code Playgroud)

我想知道是否有可能通过"类别"对数组进行分组,因此不是重复的catids,而是每个对象内部都会有一个catid ..如果这有意义吗?所以说catid 7只会出现一次,里面有两个item1/item2.

Amb*_*ber 5

这个怎么样?

foreach($results as $result) {
    $by_category[$result->catid][] = $result;
}

print_r($by_category);
Run Code Online (Sandbox Code Playgroud)