[Solved] re-arrange multidimensional php array


If I got your logic right then this function is what you need.

(Edited)

function strange_reformat($srcArray) {
    $newArray = [];
    $c = count($srcArray);
    $i = 0;
    $groupStart = null;
    $collect = [];
    while($i < $c) {
        $row = current($srcArray[$i]);
        if ($row == $groupStart) {
            $newArray[] = $collect;
            $collect = [];
        }
        $tmp = array_values($srcArray[$i]);
        $collect[] = [$tmp[0] => $tmp[1]]; 
        if ($groupStart === null) $groupStart = $row;
        $i++;
    }
    $newArray[] = $collect;

    return $newArray;
}

print_r(strange_reformat($myar));

0

solved re-arrange multidimensional php array