首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在PHP JSON对象中处理数据

在PHP JSON对象中处理数据
EN

Stack Overflow用户
提问于 2008-11-04 20:50:57
回答 3查看 174.9K关注 0票数 85

来自JSON中Twitter搜索API的趋势数据。

使用以下命令抓取文件:

代码语言:javascript
复制
$jsonurl = "http://search.twitter.com/trends.json";
$json = file_get_contents($jsonurl,0,null,null);
$json_output = json_decode($json);

如何处理此对象中的数据。作为一个数组?只需要从Name值中提取数据。

JSON对象包含:

代码语言:javascript
复制
stdClass Object
(
    [trends] => Array
        (
            [0] => stdClass Object
                (
                    [name] => Vote
                    [url] => http://search.twitter.com/search?q=Vote
                )

            [1] => stdClass Object
                (
                    [name] => Halloween
                    [url] => http://search.twitter.com/search?q=Halloween
                )

            [2] => stdClass Object
                (
                    [name] => Starbucks
                    [url] => http://search.twitter.com/search?q=Starbucks
                )

            [3] => stdClass Object
                (
                    [name] => #flylady
                    [url] => http://search.twitter.com/search?q=%23flylady
                )

            [4] => stdClass Object
                (
                    [name] => #votereport
                    [url] => http://search.twitter.com/search?q=%23votereport
                )

            [5] => stdClass Object
                (
                    [name] => Election Day
                    [url] => http://search.twitter.com/search?q=%22Election+Day%22
                )

            [6] => stdClass Object
                (
                    [name] => #PubCon
                    [url] => http://search.twitter.com/search?q=%23PubCon
                )

            [7] => stdClass Object
                (
                    [name] => #defrag08
                    [url] => http://search.twitter.com/search?q=%23defrag08
                )

            [8] => stdClass Object
                (
                    [name] => Melbourne Cup
                    [url] => http://search.twitter.com/search?q=%22Melbourne+Cup%22
                )

            [9] => stdClass Object
                (
                    [name] => Cheney
                    [url] => http://search.twitter.com/search?q=Cheney
                )

        )

    [as_of] => Mon, 03 Nov 2008 21:49:36 +0000
)
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2008-11-04 20:59:08

你是说像这样的东西?

代码语言:javascript
复制
<?php

$jsonurl = "http://search.twitter.com/trends.json";
$json = file_get_contents($jsonurl,0,null,null);
$json_output = json_decode($json);

foreach ( $json_output->trends as $trend )
{
    echo "{$trend->name}\n";
}
票数 145
EN

Stack Overflow用户

发布于 2010-11-03 20:58:48

如果您使用json_decode($string, true),您将不会得到任何对象,但所有内容都是一个关联或数字索引数组。更容易处理,因为PHP提供的stdObject只是一个带有公共属性的哑容器,不能用你自己的功能来扩展。

代码语言:javascript
复制
$array = json_decode($string, true);

echo $array['trends'][0]['name'];
票数 35
EN

Stack Overflow用户

发布于 2008-11-04 21:03:53

就像你定义的对象一样使用它。即

代码语言:javascript
复制
$trends = $json_output->trends;
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/263392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档