成功时输出
的字符串(66) “{” 状态 “:真,” 消息 “:” 成功 “ ”数据“:{ ”amountDue“: ” - 504.20“}}”
错误时输出
string(119)“{”status“:false,”message“:”获取时出错 完整订户配置文件:未找到订阅MPP服务器“}”
我应该如何在php中编写以从输出中获得应付金额?我是REST api的新手。有人能告诉我吗?谢谢
答案 0 :(得分:0)
这是一个JSON编码的响应。使用json_decode()将字符串转换回数组,然后访问数组元素:
$output = '{"status":true,"message":"success","data":{"amountDue":"-504.20"}}';
$results = json_decode($output,true);
if($results["status"])
{
echo "Success! Data: " . print_r($results,true);
}
答案 1 :(得分:0)
我假设您至少可以向端点发送适当的请求,并且您能够捕获响应。
您收到一个json字符串,必须解析,如果:
$response = '{"status":true,"message":"success","data":{"amountDue":"-504.20"}}';
$responseArray = json_decode($response, true);
然后你会得到一个responseArray作为关联数组(第二个参数),这样你就可以获得相应的金额
$amountDue = $responseArray['data']['amountDue'];
您还可以将json数据解析为StdClass,它将json中的所有字段转换为对象的属性。为此,放弃json_decode函数中的第二个参数
$resultObj = json_decode($response);
$amountDue = $resultObj->data['amountDue'];
全部取决于您的要求。 要阅读有关json_decode的更多信息,请尝试documentation