2012-12-29 34 views
-1

这是我的代码:PHP如何将数组推入数组[键]?

$orders = Array(); 

foreach ($unassigned as $uorder) { 
    $array = Array(
     "ordid" => $uorder->idord, 
     "fecha" => $uorder->datorod, 
     "cliente" => $uorder->idcli 
    ); 

    array_push($orders[$uorder->user_id], $array); 
} 

print_r($orders); 

导致:

Array (
    [vendor1] => 
    [vendor2] => 
) 

我要让某种类型的

所以我可以使用$orders[vendor1][0][ordid]找到一阶的供应商制造。

回答

1

您必须首先将$orders[$uorder->user_id]指定为数组,否则无法将项目推送到其上。此外,您可以使用简写附加符号:

if(!isset($orders[$uorder->user_id])) 
    $orders[$uorder->user_id] = array(); 
$orders[$uorder->user_id][] = $array; 
+0

非常感谢你真的帮助我很多....这真是让我疯狂的感谢! –

0

在你的foreach循环中检查$orders[$uorder->user_id]是否是一个数组,如果没有创建一个。

foreach($unassigned as $uorder): 

    if(! is_array($orders[$uorder->user_id])) 
     $orders[$uorder->user_id] = array(); 

    array_push($orders[$uorder->user_id],Array("ordid" => $uorder->idord, "fecha" => $uorder->datorod, "cliente" => $uorder->idcli)); 
endforeach; 
+0

ok我刚刚修复了我的代码!非常感谢 !!! –