[英]decode json from gnip with php
我已经在这里呆了几个小时了,终生无法弄清如何解码此json文件。 我正在使用gnip捕获Twitter数据。 Gnip正在以JSON格式返回数据。 我需要一种在php中对此进行解码并能够访问每个json对象的方法。 我之前曾使用过json,但我无法将这一想法包起来。 我在简单测试中遇到的一件有趣的事情是,如果我有这样的json代码
{"foo":123}
我可以使用json_decode()函数对其进行解码。 但是如果json是这样格式化的
{
"foo":123
}
它不解码:/
这是json代码的链接:
https://dl-web.dropbox.com/get/Public/myjson.json?w=b7ad8e2c
如果此链接不起作用,则应
https://dl.dropbox.com/u/57604377/myjson.json
我试图这样访问它。
我将所有这些json代码放入文件中,然后读取文件,然后将内容放入名为$ json的变量中,
$obj = json_decode($json)
我尝试了这两种方法来访问初学者的“ id”值
echo $obj->id
和
echo $obj->{'id'}
它不返回任何东西
我希望你们中的一些聪明人能给我一些见解。
在名为json.php的文件中给出以下代码:
<?
$json = file_get_contents("php://stdin");
$obj = json_decode($json);
var_dump($obj);
// Different echos go here
?>
并满足您的测试文件
cat multiline_gnip.json | php json.php
然后对我来说以下工作:
echo $obj->id
echo $obj->{id}
echo $obj->{'id'}
将json_decode行更改为:
$obj = json_decode($json, true);
给我一个关联数组,然后工作:
echo $obj["id"]
介意分享您用于解析此代码的一些代码?
为了完整起见,这是我的php --version
带有Suhosin-Patch的PHP 5.3.15(cli)(内置:2012年8月24日17:45:44)版权所有(c)1997-2012 The PHP Group Zend Engine v2.3.0,版权所有(c)1998-2012 Zend Technologies
(免责声明:我为Gnip工作)
您应该使用php cli来测试您的功能和数据。 从那里发现您的错误应该相当简单。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.