打印递归数组

时间:2013-01-10 08:24:34

标签: json

有人可以帮我打印这个json解码数组的“text”值吗? 我做了回音$ obj [“text”],我得到一个空白:(

啊,我做了var_dump;它说它是一个由1个元素组成的20个元素的数组:-) 因此,在编辑代码42次之后,我才进入解决方案只是因为真棒Fangel帮助打印文本需要放置以下行: echo $ obj [0] [“text”];

$obj=[
        {
          "created_at":"Mon Sep 03 05:00:30 +0000 2012",
          "id":242487207418544128,
          "id_str":"242487207418544128",
          "text":"Clint, come to the Democratic Convention. We'll get you a coherent speech to read - and we'll even help you comb your hair.",
          "source":"web",
          "truncated":false,
          "in_reply_to_status_id":null,
          "in_reply_to_status_id_str":null,
          "in_reply_to_user_id":null,
          "in_reply_to_user_id_str":null,
          "in_reply_to_screen_name":null,
          "user":{
             "id":15376626,
             "id_str":"15376626",
             "name":"BarrackObama",
             "screen_name":"BarrackObama",
             "location":"Washington, D.C.",
             "url":null,
             "description":"President of the United States of America",
             "protected":false,
             "followers_count":94289,
             "friends_count":1,
             "listed_count":577,
             "created_at":"Thu Jul 10 12:05:37 +0000 2008",
             "favourites_count":0,
             "utc_offset":-18000,
             "time_zone":"Quito",
             "geo_enabled":false,
             "verified":false,
             "statuses_count":106,
             "lang":"en",
             "contributors_enabled":false,
             "is_translator":false,
             "profile_background_color":"E6EB6F",
             "profile_background_image_url":"http://a0.twimg.com/profile_background_images/76798997/PresidentialSeal.jpg",
             "profile_background_image_url_https":"https://si0.twimg.com/profile_background_images/76798997/PresidentialSeal.jpg",
             "profile_background_tile":false,
             "profile_image_url":"http://a0.twimg.com/profile_images/56441335/so_normal.jpg",
             "profile_image_url_https":"https://si0.twimg.com/profile_images/56441335/so_normal.jpg",
             "profile_link_color":"0FA7FF",
             "profile_sidebar_border_color":"EAFF08",
             "profile_sidebar_fill_color":"171CA6",
             "profile_text_color":"E69407",
             "profile_use_background_image":true,
             "default_profile":false,
             "default_profile_image":false,
             "following":null,
             "follow_request_sent":null,
             "notifications":null
          },
          "geo":null,
          "coordinates":null,
          "place":null,
          "contributors":null,
          "retweet_count":110,
          "entities":{
             "hashtags":[

             ],
             "urls":[

             ],
             "user_mentions":[

             ]
          },
          "favorited":false,
          "retweeted":false
       }
    ]

2 个答案:

答案 0 :(得分:0)

http://php.net/manual/en/function.json-decode.php

  

assoc

     

如果为TRUE,则返回的对象将转换为关联对象   阵列。

当你将第二个参数设置为true时,你应该echo $obj["text"];而不是$obj->text;,因为正如在手册中所说的那样,第二个参数,当为真时,强制json_decode返回关联数组,即使它是一个JSON中的对象。

据我所知,你的JSON中有一组对象。所以在json解码之后你也应该有一个对象数组。只需使用foreach循环来遍历数组并打印所有项目的文本:

foreach($obj as $item) {
    echo $item->text + "<br/>";
}

或类似关联数组(如果json_decode的第二个参数为真):

foreach($obj as $item) {
    echo $item["text"] + "<br/>";
}

答案 1 :(得分:0)

这是打印它的方式:echo $obj[0]["text"];

相关问题