首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Twitter API使用时出现未定义的索引错误

问从Twitter API使用时出现未定义的索引错误
EN

Stack Overflow用户
提问于 2011-08-17 12:39:49
回答 2查看 841关注 0票数 0

我试图使用cURL和PHP从Twitter API中提取每日趋势,但是我得到了Undefined index错误。我做错了什么?

这是我的php代码

代码语言:javascript
复制
<?php
$trends_url = "http://api.twitter.com/1/trends/daily.json";

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, $trends_url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$curlout = curl_exec($ch);

curl_close($ch);

$response = json_decode($curlout, true);

foreach($response as $trend){

$url = $trend['query'];

$name = $trend['name'];

?>

<div class="trend">
    <a href="http://www.twitter.com/<?php echo $url;?>"><?php echo $name;?></a>
</div
<?php
    } 
?>

显示错误:

代码语言:javascript
复制
Notice: Undefined index: query in C:\xampp\htdocs\twitter_trends\index.php on line 22

Notice: Undefined index: name in C:\xampp\htdocs\twitter_trends\index.php on line 24
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-17 12:46:33

您与名称/查询的数组相差了两个级别。

代码语言:javascript
复制
foreach($response as $array){
    foreach ($array as $date) {
        foreach ($date as $trend) {
            echo $trend['query'] . "\n";
        }
    }
}

如果您感到困惑,请使用print_r($response)。

票数 0
EN

Stack Overflow用户

发布于 2011-09-12 15:43:59

您需要更改foreach部分,如下所示:

代码语言:javascript
复制
foreach($response['trends'] as $trend){

    foreach($trend as $trend)
    {
        $url = $trend['query'];

        $name = $trend['name'];

        ?>
        <div class="trend">
            <a href="http://www.twitter.com/<?php echo $url;?>"><?php echo $name;?></a>
        </div>
        <?php
        }
    } 

?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7088028

复制
相关文章

相似问题

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