Как преобразовать двумерный массив в одномерный в 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 можно преобразовать двумерный массив в одномерный.
-
- Михаил Русаков
Комментарии (0):
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.