【发布时间】:2015-01-29 14:58:44
【问题描述】:
我想从 Carquery API 获取 Json 数据。但是我的代码都没有工作。
首先我尝试使用 curl 获取数据。这是我的代码
$loginUrl = 'http://www.carqueryapi.com/api/0.3/?callback=?&cmd=getTrims&year=2015';
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL,$loginUrl);
$result=curl_exec($ch);
curl_close($ch);
var_dump(json_decode($result));
它返回空值。然后我尝试使用 file_get_content。这是我的代码:
$json = file_get_contents('http://www.carqueryapi.com/api/0.3/?callback=?&cmd=getTrims&year=2015');
$obj = json_decode($json);
var_dump($obj);
不幸的是,它也没有用。
有什么帮助吗?
【问题讨论】:
-
您能否发布您的 json 字符串,看起来它是一个无效的 json。尝试使用jsonlint.com 来验证您的 json 字符串。
-
查看您的网站后,它会在 json 字符串之前显示一个 ?(。删除这 2 个字符。
-
@StijnBernards 这对 JSONP 至关重要。您需要从 URL 中删除 JSONP 回调,因为 PHP 不需要它,也不能使用它。
/?cmd=getTrims&year=2015 -
@BenFortune 今天我学到了。 :)
-
@BenFortune 谢谢本,它有效 :)
标签: php json curl file-get-contents