对于你们中的一些人来说,这是一个愚蠢的简单问题,但是我似乎无法将结果打印出来。
我一直得到警告:在C:'xampp'htdocs' dt .php第14行中为foreach()提供无效参数
感谢$url = "http://search.twitter.com/search.json?q=shoes&include_entities=true&rpp=2";
$data = file_get_contents($url);
$result = json_decode($data, true);
foreach ($result->results as $data) {
echo $data->created_at;
}
json返回如下所示:
Array
(
[completed_in] => 0.019
[max_id] => 1.4886632421341E+17
[max_id_str] => 148866324213411841
[next_page] => ?page=2&max_id=148866324213411841&q=shoes&rpp=2&include_entities=1
[page] => 1
[query] => shoes
[refresh_url] => ?since_id=148866324213411841&q=shoes&include_entities=1
[results] => Array
(
[0] => Array
(
[created_at] => Mon, 19 Dec 2011 20:44:32 +0000
...
etc
...
$result
是一个数组,但你把它当作一个对象。同样,它的内部组件$results
也是一个关联数组的数组,但是您已经将其视为对象。在循环的上下文中,$data
是一个数组,created_at
作为其键之一:
// Access [results] as an array key
foreach ($result['results'] as $data) {
// $data is $results[0], $results[1], ...,$results[n]
// [created_at] is an array key of $results[n]
echo $data['created_at'];
}