Эта функция должна работать, и это настолько просто, насколько это возможно.
function reindex_array($src) {
$dest = array();
foreach ($array as $key => $value) {
if (is_array($value)) {
foreach ($value as $dest_val) {
$dest[$key][] = $dest_val;
}
}
}
return $dest;
}
Использование array_values (), как предложено в Ответ Хенрика
function reindex_array($src) {
$dest = array();
foreach ($array as $key => $value) {
if (is_array($value)) {
$dest[$key] = array_values($value);
}
}
return $dest;
}
Это сделает индекс массива основанным на 0. Если вы хотите индексирование на основе 1, используйте следующее:
function reindex_array($src) {
$dest = array();
foreach ($array as $key => $value) {
if (is_array($value)) {
$count = 1;
foreach ($value as $dest_val) {
$dest[$key][$count] = $dest_val;
$count++;
}
}
}
return $dest;
}