如何解码这个JSON字符串?

时间:2010-02-10 08:36:52

标签: php json

这是我从feed finder url(JSON编码)获取的字符串:

{"updated":1265787927,"id":"http://www.google.com/reader/api/0/feed-finder?q\u003dhttp://itcapsule.blogspot.com/\u0026output\u003djson","title":"Feed results for \"http://itcapsule.blogspot.com/\"","self":[{"href":"http://www.google.com/reader/api/0/feed-finder?q\u003dhttp://itcapsule.blogspot.com/\u0026output\u003djson"}],"feed":[{"href":"http://itcapsule.blogspot.com/feeds/posts/default"}]}

如何使用php中的json_decode()函数解码它并获取最后一个数组元素(“feed”)?我尝试使用以下代码,但没有运气

 $json = file_get_contents("http://www.google.com/reader/api/0/feed-finder?q=http://itcapsule.blogspot.com/&output=json");
 $ar = (array)(json_decode($json,true));
 print_r $ar;

请帮助..

1 个答案:

答案 0 :(得分:2)

$array = json_decode($json, true);
$feed = $array['feed'];

请注意,当您使用true作为第二个参数调用时,json_decode()已经返回一个数组。

<强>更新

作为JSON中feed的值

"feed":[{"href":"http://itcapsule.blogspot.com/feeds/posts/default"}]

是一个对象数组,$array['feed']的内容是:

Array
(
    [0] => Array
        (
            [href] => http://itcapsule.blogspot.com/feeds/posts/default
        )  
)

要获取您必须使用$array['feed'][0]['href']$feed[0]['href']访问数组的网址。

但这是数组的基本处理。也许Arrays documentation可以帮助你。