$body = file_get_contents($url); //defined somewhere else
$json = json_decode($body);
if(isset($json->SearchResponse->Errors))
throw new Exception ("search Error");
$json->SearchResponse->Errors
指的是什么?我的意思是这会查看body(或)searchresponse的内容,错误是对象..?
答案 0 :(得分:2)
它会搜索$body
针对相应条目SearchResponse
及Errors
下方提交的回复。
如果找到任何对象(可能表示处理请求时发生了错误),它会将此错误转换为PHP异常,这可能是通过在代码中的其他位置使用try catch
来捕获的。 / p>
可能触发此行为的JSON响应可能如下所示
{
"SearchResponse": {
"Error": "Something went wrong here!"
}
}
答案 1 :(得分:2)
在序列化为JSON的对象中,有一个名为SearchResponse
的对象,它有一个名为Errors
的属性。如果json_decode()
的第二个参数为false(默认值),则{}
将被反序列化为stdClass
个对象(true将生成关联数组)。
所以JSON可能是这样的:
{
"SearchResponse" : {
"Errors" : 1
}
}