php将多维数组划分如下

时间:2015-12-29 04:24:43

标签: php multidimensional-array duplicates

请帮我一个代码。 我需要结果变得像那样将“funcionario_id”作为关键

1)在数组中一起复制“funcionario_id”

2)每个未复制的数组都变成一个单独的数组

注意:这个多维是动态的,这个例子显示了4个数组,但可以更多。

我的数组是:

$total_pedidos = Array(
[0] => stdClass Object
    (
        [pedido_id] => 54
        [cliente_id] => 5
        [funcionario_id] => 52
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:19
    )

[1] => stdClass Object
    (
        [pedido_id] => 51
        [cliente_id] => 7
        [funcionario_id] => 55
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:28
    )

[2] => stdClass Object
    (
        [pedido_id] => 52
        [cliente_id] => 5
        [funcionario_id] => 52
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:32
    )

[3] => stdClass Object
    (
        [pedido_id] => 53
        [cliente_id] => 6
        [funcionario_id] => 53
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:36
    )

)

,结果应该是这样的:

重复一起

 Array (
[0] => stdClass Object
    (
        [pedido_id] => 54
        [cliente_id] => 5
        [funcionario_id] => 52
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:19
    )
[2] => stdClass Object
    (
        [pedido_id] => 52
        [cliente_id] => 5
        [funcionario_id] => 52
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:32
    )
)

分开一个

Array (
[1] => stdClass Object
    (
        [pedido_id] => 51
        [cliente_id] => 7
        [funcionario_id] => 55
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:28
    )
)

分开一个

 Array (
[3] => stdClass Object
    (
        [pedido_id] => 53
        [cliente_id] => 6
        [funcionario_id] => 53
        [pedido_forma_de_pagto_id] => 2
        [pedido_data_emitir] => 2015-12-16 13:07:36
    )
)

谢谢

1 个答案:

答案 0 :(得分:1)

试试这样..

$new_array = array();
foreach($total_pedidos as $total_pedido){
    $new_array[$total_pedido->funcionario_id][] = $total_pedido;
}
print_r($new_array);

希望这会有所帮助。