我的代码如下所示:
$response = curl_exec($curl);
echo $response;
$err = curl_error($curl);
curl_close($curl);
if ($response['status'] == 200) {
echo '<img style="text-align:center"; src="./check-successful.gif" width="100" /><br/><p>Please close the browser</p>';
sleep(2);
}
else {
echo '<img style="text-align:center"; src="./icn-failed-1.gif" width="100" /><br/><p>Please close the browser</p>';
sleep(2);
}
这里echo给了我这个输出:
{"status":"200","message":"Your test message"}
但是以某种方式,if($response['status'])
不能识别它,而仅将其放入else语句。
答案 0 :(得分:1)
您必须使用json_decode
解码此响应:
$response = json_decode($response, true);
现在您可以将$response
用作数组
答案 1 :(得分:1)
您需要先对其进行解码,然后检查我的代码:
$response = curl_exec($curl);
echo $response;
$decodedResponse = json_decode($response, true);
$err = curl_error($curl);
curl_close($curl);
if ($decodedResponse['status'] == 200) {
echo '<img style="text-align:center"; src="./check-successful.gif" width="100" /><br/><p>Please close the browser</p>';
sleep(2);
}
else {
echo '<img style="text-align:center"; src="./icn-failed-1.gif" width="100" /><br/><p>Please close the browser</p>';
sleep(2);
}
现在一切都很好。