2011-12-19 12 views
2

これはあなたの中には愚かな簡単な質問ですが、結果をプリントアウトできないようです。 Cでforeachのために供給無効な引数():PHP Twitter Search API - ForEach()が動作しない

私は警告入れません\ xamppの\ htdocsに\ td.phpライン上の14の

おかげ

$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 
    ... 

答えて

3

$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']; 
} 
+0

うん。私は$ result ['results']を試みましたが、didnt 'も$ data [' created_at ']に変更されました。ありがとう! – vitalyp

関連する問題