这是我的 PHP 脚本。
do2:locu alexus$ cat venuesearch.php
<?php
$KEY='XXXXXXXXXXXXXXX';
$URL='http://api.locu.com/v1_0/venue/search/?api_key=';
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, $URL.$KEY);
curl_setopt($ch, CURLOPT_HEADER,0);
print_r(json_decode(curl_exec($ch),TRUE));
?>
do2:locu alexus$
locu
服务提供 JSON 格式的输出。当我运行脚本时,我得到的都是长单行输出。
输出示例:
do2:locu alexus$ php venuesearch.php
{"meta": {"cache-expiry": 3600, "limit": 25}, "objects": [{"categories": ["restaurant"], "country": "United States",..........
我错过了什么?我怎样才能访问这些变量中的每一个?也许将其转换为 XML 有意义?
* 更新 * :..在 PHP: json_decode - Manual 的示例 #1 中显示格式化输出,如果我使用 true
然后我得到数组,我既没有得到格式输出也没有得到数组。
最佳答案
尝试添加:
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
执行前。
看起来执行只是简单地打印响应,而不是将其作为字符串返回以供 json_decode 处理。
关于PHP:JSON 格式输出到一长单行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15057797/