当我收到json格式的消息时如下:
{
"Details":{
"Type":"Cash",
"Payid":"PAY123456",
"Amount":"9000,00",
"Status":"Successful",
}
}
我需要以下面的JSON格式返回响应,只接收两个参数(Type& Payid)
{
"Details": {
"Type": "Cash",
"Payid": "PAY123456"
}
}
目前在我的控制器中,它将返回收到的所有详细信息。 但是我如何修改它,以便它只返回某些参数。
public function returnResponse(Request $request)
{
$datas= $request->getContent();
$returnData= json_decode($datas, true);
return response()->json($returnData);
}
答案 0 :(得分:1)
这是一种方法:
public function returnResponse(Request $request){
$datas = $request->getContent();
$parsedJson = json_decode($datas, true);
$returnData = array('Details' => array(
'Type' => $parsedJson['Details']['Payid'],
'Payid' => $parsedJson['Details']['Payid'],
'Confirmation' => 0 // do the same in this line if you want to add more
));
return response()->json($returnData);
}
此代码假设您始终拥有' Type'和' Payid'内部'详细信息'。
结果将是:
Array
(
[Details] => Array
(
[Type] => PAY123456
[Payid] => PAY123456
[Confirmation] => 0
)
)
注意,如果您只想将Confirmation
添加到原始数组,可以使用:
$returnData['Details']['Confirmation'] = 0;