Сквозное преобразование массива?
преобразовать
['a' => [11, 12], 'b' => [21, 22]]
в
[['a' => 11, 'b' => 12], ['a' =>21, 'b' => 22]]
Совершенно не очевидно, почему результат должен быть таким, как вы показали. Почему 12 из a становится значением свойства b, а 21 - наоборот? Опечатка? - наверное, в a исходного массива лежат значения свойств a результата, аналогично и с b.

array_map(fn($i) => array_combine(array_keys($arr), array_column($arr, $i)), array_keys(array_values($arr)[0]))
$array = ["a" => [11, 12], "b" => [21, 22]];

array_map(function($values) use (&$array) {
    $keys = array_keys($array);
    return array_reduce($values, function($carry, $value) use (&$keys) {
        $carry[array_shift($keys)] = $value;
        return $carry;
    }, []);
}, array_values($array));

Еще короче вариант
array_map(fn($key) => array_combine(array_keys($array), $array[$key]), array_keys($array))

Альтернативный
array_map(function ($key) use (&$array) {
    return array_combine(array_keys($array), $array[$key]);
}, array_keys($array));