2014-10-15 5 views
0

У меня есть следующий массив:PHP Split многомерный массив

Array (

    [0] => Array (
     [nombre] => Juan Mandrola 
     [id] => 5 
     [fecha_egreso] => 15/10/2014 
     [hora_egreso] => 15:00 
    ) 

    [1] => Array (
     [nombre] => Pedro Martinez 
     [id] => 5 
     [fecha_egreso] => 17/10/2014 
     [hora_egreso] => 15:00 
    ) 

) 

мне нужно отделить первый массив в 2-х массивов, изменяя элемент «Nombre» для «mecanico» и другие элементы в другой массив с именем " Фаарей».

Array (

    [0] => Array (
     [mecanico] => Juan Mandrola 
     [tarea] => Array (
       [id] => 1 
       [fecha_egreso] => 15/10/2014 
       [hora_egreso] => 15:00 
      ) 

    ) 

    [1] => Array (
     [mecanico] => Pedro Martinez 
     [tarea] => Array (
       [id] => 5 
       [fecha_egreso] => 17/10/2014 
       [hora_egreso] => 15:00 
      ) 

    ) 

Большое спасибо за помощь!

+1

Я вижу много * Я хочу/мне нужно *, что вы пробовали? –

+1

Пройдите массив и измените его по мере необходимости –

+0

Держу пари, что вы не пробовали линию для этого – Notepad

ответ

0

Ваше быстрое и грязное решение было бы создать новый массив и присвоить значения по мере необходимости. Хотя это не лучший способ сделать что-то, вот псевдокод:

for($i = 0; $i < count($myOldArray); $i++) { 
    $myNewArray[$i]['mecanico'] = $myOldArray[$i]['nombre']; 
    $myNewArray[$i]['tarea']['id'] = $myOldArray[$i]['id']; 
    $myNewArray[$i]['tarea']['fecha_egreso'] = $myOldArray[$i]['fecha_egreso']; 
    $myNewArray[$i]['tarea']['hora_egreso'] = $myOldArray[$i]['hora_egreso']; 
} 
+0

Джулиан, большое спасибо !!! ;) – awdesarrollos

+0

Добро пожаловать, но имейте в виду, что вы дублируете объем ресурсов, используемых вашей программой для каждого использования этого фрагмента кода. Если количество данных, которые вы передаете через этот фрагмент, очень велико, этот подход может иметь заметное влияние на производительность. ** Обычно **, вы будете в порядке с быстрым и грязным методом, но хорошо понимать последствия происходящего. –

0
$newArray = array(); 
foreach($array as $key=>$val){ 
$newArray[]['tarea'] = array('id'=>$val['id'], 'fecha_egreso'=>$val['fecha_egreso'], 'hora_egreso'=>$val['egreso']); 
$newArray[]['mecanico'] = $val['nombre']; 
} 
Смежные вопросы