Итак, представим ситуацию - у нас есть некая выборка, допустим из базы данных, которая представляет собой двумерный массив и нам этот двумерный массив необходимо преобразовать в одномерный .

Как преобразовать двумерный массив в одномерный в PHP?

Итак, представим ситуацию - у нас есть некая выборка, допустим из базы данных, которая представляет собой двумерный массив и нам этот двумерный массив необходимо преобразовать в одномерный.

Вот массив:

    $array = [
        ['site','myrusakov'],
        ['age',10],
        ['owner','Michael Rusakov'],
        ['tags','php,js,mysql']
    ];

Что здесь можно сделать, чтобы преобразовать данный массив в одномерный? Можно рекурсивно пройтись по всем элементам массива и отправить их всех в один одномерный массив, а можно взять и воспользоваться встроенными средствами PHP и сделать все гораздо проще и элегантнее.

Вот так:

$flt2 = call_user_func_array('array_merge',$states);

print_r($flt2);

Результат:

Array
(
    [0] => site
    [1] => myrusakov
    [2] => age
    [3] => 10
    [4] => owner
    [5] => Michael Rusakov
    [6] => tags
    [7] => php,js,mysql
)

Объясняю, что происходит в примере. Функция call_user_function_array разбивает двумерный массив на множество одномерных массивов, которые уже преобразует в одномерный массив функция array_merge. Но учтите, что для массивов, размерность которых больше двух данный трюк не сработает, там уже необходимо применять другое решение.

Вот так в PHP можно преобразовать двумерный массив в одномерный.