【发布时间】:2015-06-17 06:11:01
【问题描述】:
当我运行这个函数时,我得到了
消息:array_push() 期望参数 1 为数组,在第 676 行给出 null 严重性:警告消息:array_push() 期望参数 1 为数组,给定 null 文件名:controllers/main.php 行号:676
function get_order_details()
{
$query1="SELECT * FROM order_main ";
$o_main=$this->main_model->query_return($query1);
$query="SELECT * FROM order_main om join order_details od on od.order_main_id=om.order_id ";
$o_details=$this->main_model->query_return($query);
if(count($o_details))
{
$ary = array(
'details'=> array(
'orders'=>array()
)
);
foreach($o_main as $om)
{
$jsonCustomer=array(
$om->order_id=> array(
array("order_id"=>$om->order_id,
"customer_name"=>$om->customer_name,
"contact_no"=>$om->contact_no,
"address"=>$om->address,
"landmark"=>$om->landmark,
"items"=>array()
)
)
);
array_push($ary['details']['orders'],$jsonCustomer);
foreach($o_details as $od)
{
$jsonRow=array(
$od->dish_id=> array(
"dish_id"=>$od->dish_id,
"dishname"=>$od->dish_name,
"qty"=>$od->qty,
"category_id"=>$od->category_id,
"category_name"=>$od->category_name,
"price"=>$od->price,
)
);
array_push($ary['details']['orders'][$om->order_id] ['items'],$jsonRow);
}
}
echo $json=json_encode($ary);
}
}
【问题讨论】:
-
因为数组
$ary['details']['orders']是空的 -
谢谢,如何解决这个问题
-
$jsonCustomer被初始化为$om->order_id的双数组而不是单个数组
标签: php json codeigniter