Как преобразовать представленный массив формы в этот массив на php? - PullRequest
0 голосов
/ 30 ноября 2011

Предположим, у меня есть следующий массив, представленный в виде html:

array(
    'firstname' => array('Sara','Jim'),
    'lastname'  => array('Gibson','Jobs')
);

Я хочу достичь следующего массива:

array(
    array(
        'firstname' => 'sara',
        'lastname'  => 'Gibson'
    ),
    array(
        'firstname' => 'Jim',
        'lastname'  => 'Jim'
    )
);

Мне нужна функция для автоматической сортировкимассив не вводится вручную, а автоматически обрабатывает данные массива.

Ответы [ 2 ]

2 голосов
/ 30 ноября 2011
$new_arr = array();
$length = count($arr['firstname']);
for($i = 0; $i < $length; $i++)
{
   $new_arr[] = array('firstname' => $arr['firstname'][$i], 'lastname' => $arr['lastname'][$i]);
}
1 голос
/ 30 ноября 2011

Я не вижу ничего плохого в решении @Tim Cooper, но если вы не хотите указывать ключи вручную, вы также можете использовать:

$new_arr = array();
foreach ($arr as $key => $value)
{
  foreach ($value as $numkey => $value2)
  {
    $new_arr[$numkey][$key] = $value2;
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...