我如何解析这个使用php的json?

问题描述:

这里是我的JSON字符串:我如何解析这个使用php的json?

{ 
    "id": "100007460521803_1498098053782198" 
} 

我想要显示的ID ..使用此代码即时通讯不成功:

$json = file_get_contents('id.txt'); 
$decode = json_decode($json); 
echo $decode->id; 

错误:

致命错误:无法使用的对象在第6行输入stdClass作为/home/xtremepi/public_html/who-viewed/test.php中的数组。

任何想法?

+0

更换

echo $decode->id; 

请问你的代码产生的任何错误? – Jerodev 2014-10-29 09:47:37

+0

什么意思'失败'?输出是什么?抛出的错误在哪里?对我来说工作正常 – lordvlad 2014-10-29 09:47:41

+8

你的代码看起来不错,不可重现。看起来好像'file_get_contents()'没有得到你的JSON字符串。 – George 2014-10-29 09:47:49

错误是因为它显然认为你正在将一个对象(由json_decode()返回)作为一个数组处理。

尝试

echo $decode->{'id'}; 

如果不行的话,使用

$decode = json_decode($json, true); 

把它输出作为ASSOC阵列。

编辑:在downvoting之前通读评论......这与他收到的错误有关。我在等待他从另一个测试中发布结果,然后我会改变答案。

+0

代码在问题似乎正确http://codepad.viper-7.com/EEZ8jf。 – Sithu 2014-10-29 09:54:38

+0

我知道,我正在评论中。这是指他收到的错误。我在等待他发布'var_dump($ decode)'的结果。当我有机会提供更合适的答案时,我们会进行编辑。 – danhardman 2014-10-29 09:55:55

我已检查并获得您的代码正在工作。 您必须确定您的id.txt文件位于相同的目录中。 或 只是试图通过这一个

echo $decode['id'];