我正在使用Web API将消息作为我的应用程序目标发送给许多人。该API运行良好,并收到消息。问题是显示应用程序中发送的消息的结果,无论是否发送,接收器等。在API中,它只使用一个变量显示结果:$result = curl_exec($ch);
。显示结果如:
Message TestTesting{"response": [{"errors": {"action": "Failed to Send", "error": "No Cost Associated to messages"}}], "success": false}
通过这种方式,我无法单独格式化结果,或应用一些CSS规则来匹配应用程序。我也看不到阻止邮件发送的错误原因(如低积分余额),因此我不会将其显示给用户。我想得到个别变量。我试图寻找答案,但结果是我使用JSON解码。我试过了:
$result = curl_exec($ch);
$json=json_decode($result,true);
print_r($json);
显示如下:
MessageTestingArray ( [response] => Array ( [0] => Array ( [errors] => Array ( [action] => Failed to Send [error] => No Cost Associated to messages ) ) ) [success] => )
我尝试使用数组来分别使用'action'来获取它们:
$result = curl_exec($ch);
$json=json_decode($result,true);
echo $json['action'];
但结果是错误:
Notice: Undefined index: action in C:\xampp\htdocs\glory\process.php on line 75
我怎样才能让它发挥作用?
答案 0 :(得分:0)
$ result = curl_exec($ ch); $ JSON = json_decode($结果,TRUE);
echo $ json ['回复'] [0] ['错误'] ['行动'];
答案 1 :(得分:0)
你可以使用@Addil发布的内容,但我个人不想在我的代码中硬编码[0]。 [0]是有原因的,因此可能有多个结果。
$result = curl_exec($ch);
$json=json_decode($result,true);
foreach($json['response'] as $response){
echo $response['errors']['action'];
}
但请记住在做foreach之前做一个检查。要查看响应中是否存在具有错误数组的实际数组,否则将从foreach中打印出错误。