Dados de tendências da API de pesquisa do Twitter em JSON.
Pegando o arquivo usando:
$jsonurl = "http://search.twitter.com/trends.json";
$json = file_get_contents($jsonurl,0,null,null);
$json_output = json_decode($json);
Como faço para trabalhar com dados deste objeto. Como uma matriz? Só realmente preciso extrair dados dos valores de [nome].
O objeto JSON contém:
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
)
Se você usar
json_decode($string, true)
, não obterá objetos, mas tudo como uma matriz associativa ou indexada por número. Muito mais fácil de manusear, pois o stdObject fornecido pelo PHP nada mais é do que um contêiner burro com propriedades públicas, que não pode ser estendido com sua própria funcionalidade.$array = json_decode($string, true); echo $array['trends'][0]['name'];
fonte
Basta usá-lo como se fosse um objeto que você definiu. ie
$trends = $json_output->trends;
fonte