Распечатать JSON с PHP - PullRequest
       2

Распечатать JSON с PHP

1 голос
/ 15 января 2011

На экране ничего не отображается, этот код действителен ниже? Я знаю, что в полученных данных есть JSON-параметр с именем 'text', но не знаю, как его распечатать?

    <?php
    $url='http://twitter.com/statuses/user_timeline/twostepmedia.json'; //rss link for the twitter timeline
    //print_r(get_data($url)); //dumps the content, you can manipulate as you wish to
    $obj = json_decode($data);
    print $obj->{'text'};
    /* gets the data from a URL */

    function get_data($url)
    {
    $ch = curl_init();
    $timeout = 5;
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
    $data = curl_exec($ch);
    curl_close($ch);
    return $data;
    }
    ?>

Ответы [ 3 ]

5 голосов
/ 15 января 2011

Это должно работать:

$obj = json_decode(get_data($url));
$text = $obj[0]->text;

Хорошая идея попробовать что-то вроде var_dump($obj), когда вы столкнетесь с такой проблемой.После этого сразу становится ясно: $obj[0]->text - это то, что вам нужно.

@ benhowdle89 комментарий:

foreach ($obj as $item) {
    $text = $item->text;
}
1 голос
/ 15 января 2011

Вам следует присвоить значение, возвращаемое get_data, переменной и передать его в json_decode, например:

<?php
    $url='http://twitter.com/statuses/user_timeline/twostepmedia.json'; //rss link for the twitter timeline
    //print_r(get_data($url)); //dumps the content, you can manipulate as you wish to
    $data = get_data($url);
    $obj = json_decode($data);
    print $obj->text;
    /* gets the data from a URL */

    function get_data($url)
    {
    $ch = curl_init();
    $timeout = 5;
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
    curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
    $data = curl_exec($ch);
    curl_close($ch);
    return $data;
    }
    ?>
0 голосов
/ 15 января 2011

$data не установлено, и вам не нужны фигурные скобки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...