2015-12-29 50 views
1

请帮我看一段代码。 我需要的结果变成那样conceder“funcionario_id”作为密钥php划分如下的多维数组

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

尝试这样的..

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

希望这会有所帮助。

+0

它是根据你的? –

+0

真的很感谢你......多么聪明和简单的代码!!! –