繁体   English   中英

PHP拆分多维数组

[英]php Split multidimensional array

我有以下数组:

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”,并将其他元素更改为另一个数组“ tarea”。

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
            )

    )

非常感谢您的帮助!

$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'];
}

您快速而又肮脏的解决方案是创建一个新数组并根据需要分配值。 虽然这不是最好的处理方式,但这里是伪代码:

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'];
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM