在php中合并重复的数组值

I have a multidimensional array like:

Array
(
    [0] => Array
        (
            [division] => Mymensingh
            [A] => 1
        )    
    [1] => Array
        (
            [division] => Dhaka
            [A] => 5
        )
    [2] => Array
        (
            [division] => Mymensingh
            [B] => 2
            [C] => 5
        )
)

Need to find the same value of division index and merge them in one array. May be there is PHP functions to do this. I could not figure it out. Now from this array I want the output as:

Array
    (
        [0] => Array
            (
                [division] => Mymensingh
                [A] => 1
                [B] => 2
                [C] => 5
            )    
        [1] => Array
            (
                [division] => Dhaka
                [A] => 5
            )
    )

Index of sub arrays can be different and also can be different numbers of.

I think it's relatively simple to just iterate through the array and continuously merge the entries separated by "division":

function mergeByDiscriminator($input, $discriminator = 'division') {
    $result = [];

    foreach ($input as $array) {
        $key = $array[$discriminator];
        $result[$key] = array_merge(
            array_key_exists($key, $result) ? $result[$key] : [],
            $array
        );
    }

    return array_values($result);
}

$result = mergeByDiscriminator($input); // $input is your array

The only solution that I can think of is as below. Of course there might be other feasable solutions, but I am giving one from my end.

$array = array(
   '0' => array (
       'division' => 'Mymensingh',
       'A' => 1
   ),
   '1' => array (
       'division' => 'Dhaka',
       'A' => 5
   ),
   '2' => array (
       'division' => 'Mymensingh',
       'B' => 2,
       'C' => 5
   ),
);

$result = array();
foreach ($array as $arr) {
    if (!is_array($result[$arr['division']])) $result[$arr['division']] = array();

    foreach ($arr as $key => $value) {
        $result[$arr['division']][$key] = $value;
    }
}

echo "<pre>"; print_r($result); 

The above code is giving you the desired output. Please give it a try.

Hope this helps.