//查询用户所有订单信息
public function user_order($user_id){
if (!is_numeric($user_id)){
return $this->create([],'参数类型不正确',400);
}
//根据用户ID查询主订单信息
$order = Order::sel_order_by_user_id($user_id);
$order = $order->all();
if (empty($order)){
return $this->create([],'暂无订单信息',204);
}else{
$order['base_info'] = [];
foreach ($order as $k=>$v){
if ($v['order_id']=='DD202302241336260100032252'){
dd($v['order_id']);
}
$order_goods =OrderGood::get_order_goods_by_number($v['order_id']);
array_push($order['base_info'],$order_goods);
}
return $this->create($order,'',200);
}
}
这里foreach里面的$v['order_id']打印输出是没问题的,但是放在我下面的查询里面就会报undefined index:order_id。请问下大佬们这个怎么解决呢?这个是laravel8框架里写的
public function user_order($user_id)
{
if (!is_numeric($user_id)) {
return $this->create([], '参数类型不正确', 400);
}
// 根据用户ID查询主订单信息
$orders = Order::sel_order_by_user_id($user_id)->get();
if ($orders->isEmpty()) {
return $this->create([], '暂无订单信息', 204);
} else {
$result = [];
foreach ($orders as $order) {
$base_info = [];
// 根据主订单号查询订单商品信息
$order_goods = OrderGood::get_order_goods_by_number($order->order_id)->get();
foreach ($order_goods as $good) {
// 可以将订单商品信息进一步处理,例如计算总价、获取商品图片等
$base_info[] = $good;
}
$order->base_info = $base_info;
$result[] = $order;
}
return $this->create($result, '', 200);
}
}
$order['base_info'] = [];
这个会被遍历到,$k是base_info,$v是空数组