在PHP中解析对象不起作用
我用这个来获得我的回复(仅以下相关代码):在PHP中解析对象不起作用,php,Php,我用这个来获得我的回复(仅以下相关代码): echo$result为我提供了一个似乎是有效JSON的对象。像这样: { "total_count": 1 } 但是,$my_resp返回为NULL。我在这里做错了什么?如果是JSON,在尝试读取字段之前,您应该JSON\u decode()它。您需要将它从字符串转换为对象 $result = json_decode( curl_exec($ch)); 或关联数组 $result = json_decode( curl_exec($ch), tr
echo$result
为我提供了一个似乎是有效JSON的对象。像这样:
{
"total_count": 1
}
但是,
$my_resp
返回为NULL
。我在这里做错了什么?如果是JSON,在尝试读取字段之前,您应该JSON\u decode()
它。您需要将它从字符串转换为对象
$result = json_decode( curl_exec($ch));
或关联数组
$result = json_decode( curl_exec($ch), true );
第二个给了我
int(1)
,这很奇怪。第一个抛出了一个关于“不能将stdClass类型的对象用作数组”的错误,它引用了$my_resp
行。我的错误。第二个产生了NULL
@jonmrich:这是因为当你使用第一个时,你得到的是一个对象,而不是数组。对于第一个,您需要执行:$my\u resp=$response->total\u count
$result=json_decode(curl_exec($ch))$my_resp=$result->total_count
仍然返回null。我刚刚意识到,int(1)
正是我想要的响应<代码>总计数成功时等于1
。所以,你是第一选择,加上你的评论对我有用。谢谢对于我来说,这仍然会产生NULL
代码>向您显示(而不是回显
)?那么var_dump(json_decode($result,true))呢代码>?@NathanDavis这是一个复制/粘贴错误。应该是$result
$result = json_decode( curl_exec($ch), true );