我如何从控制器接收数组到 api 并接收为 json 并解码为数组并插入

How can i recieved the array from controller to api and received as json and decode as array and insert

这是控制器发送到api的数组数据 我需要将该数组接收到 json 并将其解码为数组以插入多个 items/rows

{"payment_user":3,"pid":["1","2","3"],"isDiscounted":["1","1","1"],"discount":["1","1","1"],"scheme":["1","1","1"]}

我正在尝试使用 id 为每个循环做一个它只保存一行 我想做的是根据 pid 插入多行 这是我来自 api

的代码
public function inspayment(Request $request){
        $request->validate([
            'payment_user' => 'required',
            'pid' => 'required',
            'isDiscounted'  => 'required',
            'discount'   => 'required',
            'scheme'   => 'required',
        ]);
  $payment_particular[] = '{
                     "info":{
                         "payment_user" => $request->payment_user,
                         "pid" => $request->pid,
                         "isDiscounted"  => $request->isDiscounted,
                         "discount"   => $request->discount,
                         "scheme"   => $request->scheme
                     };
                 }';
      
        foreach($payment_particular as $index => $pp) {
            $insert = DB::table('tbl_payment_user_map')
                    ->insertGetId([
                        'payment_user' => $request->payment_user,
                        'pid' => $request->pid[$index],
                        'isDiscounted' =>$request->isDiscounted[$index],
                        'discount' =>$request->discount[$index],
                        "scheme"   => $request->scheme[$index],
                    ]);
                        return response()->json(['Success' => 'Payment User Map Created Successfully'], 200);
        }
}

试试下面的代码

public function inspayment(Request $request){
    $request->validate([
        'payment_user' => 'required',
        'pid' => 'required',
        'isDiscounted'  => 'required',
        'discount'   => 'required',
        'scheme'   => 'required',
    ]);

    foreach($request->pid as $index => $pp) {
        $insert = DB::table('tbl_payment_user_map')
                    ->insertGetId([
                        'payment_user' => $request->payment_user,
                        'payment_particular' => $pp,
                        'isDiscounted' => $request->isDiscounted[$index],
                        'discount' => $request->discount[$index],
                        "payment_scheme" => $request->scheme[$index],
                    ]);
    }

    return response()->json(['Success' => 'Payment User Map Created Successfully'], 200);
}

不需要额外的数组