在一个对象或一个对象数组中发送4个参数以保持API响应

我正在学习RestAPI。我想在一个对象中发送4个参数以进行响应。

代码:

 return response()->json(['success'=>true,'message'=>'success','data' => array($my_total_credit,$latest_credit_date,$my_total_buyers,$total_payment_requests)]);

使用上面的代码,我得到如下响应:

{
    "success": true,"message": "success","data": [
        75000,"2019-10-24",3,4
    ]
}

在上面的代码中,我正在向数据发送数组。 预期:但是现在我想要一个对象或对象数组的响应,该对象或对象数组将具有上面的4个参数,如下所示:

{
    "success": true,"data": [{
     "parameter1": "75000","parameter2": "2019-10-24","parameter3": "3","parameter4":  "4"
    }]
}

我将如何获得预期的答复? 请指导。 预先感谢。

CYF147896325 回答:在一个对象或一个对象数组中发送4个参数以保持API响应

$my_total_credit = ...;
...

return response()->json([
  'success'=>true,'message'=>'success','data' => array(array(
      "parameter1" => $my_total_credit,"parameter2" => $latest_credit_date,"parameter3" => $my_total_buyers,"parameter4" => $total_payment_requests 
  ))
]);

如果您可以从数据库查询中获取此数据,则只能执行以下操作:

$data = Model::where('xxx')->selectRaw(
    'xxx AS parameter1,xxx AS parameter2,xxx AS paramter3'
  )->first();
return response()->json([
  'success'=>true,'data' => array($data)
]);

尝试通过json_encode()测试php数组的响应

>>> $a=[[1 => '2342',2 => 'fsaf']]
>>> json_encode($a,true)
=> "[{"1":"2342","2":"fsaf"}]"  # output

>>> $a=[1 => '234',2=> 'fasa']
>>> json_encode($a,true)
=> "{"1":"234","2":"fasa"}" # output
=> 
本文链接:https://www.f2er.com/3147131.html

大家都在问