Ребят, помогите развернуть массив, из такого:
[add_link] => Array
(
[name] => Array
(
[0] => Name 1
[1] => Name 2
[2] => Name 3
)
[url] => Array
(
[0] => Url 1
[1] => Url 2
[2] => Url 3
)
)
в такой:
[add_link] => Array
(
[0] => Array( 'name' => Name 1, 'url' => Url 1 )
[1] => Array( 'name' => Name 2, 'url' => Url 2 )
[2] => Array( 'name' => Name 3, 'url' => Url 3 )
)
замучился уже..
массив динамический, приходит из формы, в которую инпуты js`ом добавляются
<input name="add_link[name][]" >
<input name="add_link[url][]" >
чтобы тупые вопросы мне не задавали - это из оф.документации, способ получения данных из формы с динамическими инпутами, когда их количество не определено http://php.net/manual/ru/faq.html.php http://php.net/manual/ru/language.variables.external.php#example-90
$result['add_link'] = array_map(function($name, $url){
return ['name' => $name, 'url' => $url];
}
, $data['add_link']['name']
, $data['add_link']['url']);
но зачем создавать себе лишние проблемы, и отправлять данные на сервер в неудобном виде? Вместо двух разных массивов add_link[name][] наоборот отправляйте их парами add_link[0][name] и т.д.
Если кол-во ключей элементов в name и url всегда совпадает, то можно просто перебрать:
$newArray = [];
foreach ($myArray['add_link']['name'] as $key => $name) {
$newArray[] = [
'name' => $name,
'url' => $myArray['add_link']['url'][$key]
];
}
unset ($myArray) // уничтожаем исходный массив если не нужен
var_dump($newArray);
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости