2011-01-13 3 views
0

부 프로젝트에서 작업 중이고 코어에서 루프를 통과 할 수있는 배열로 정사각형 json 피드를 가져와야합니다. 내 코드는 다음과 같은 오류가 아래의 결과입니다 :Foursquare JSON 피드에서 생성 된 배열을 통해 문제가 발생했습니다.

$jsonurl = "http://api.foursquare.com/v2/venues/search?ll=".$lat.",".$lon."&limit=100"; 
$json = file_get_contents($jsonurl,0,null,null); 
$json_output = json_encode($json, true); 

foreach ($json_output->response->groups[0]->items as $items) 
{ 
    echo "{$items->name}\n"; 
} 

어떤 도움을 내가 잘못된 것 뭘하는지에 관해서는 다음과 같습니다

Warning: Invalid argument supplied for foreach() in /homepages/7/d346835943/htdocs/dealrub/results.php on line 56 

내가 제대로 확보하고있는 JSON 피드의 예입니다 대단히 감사하겠습니다. 내 API 키없이 jsonurl을 남겼지 만 json 결과를 성공적으로 반환하고 있습니다.

답변

0
  1. json_decode을 사용해야합니다.
  2. $json_ouput이 비어 있지 않은지 확인하십시오.
  3. 두 번째 인수로 true을 전달하면 json_decode (올바른 것으로 가정)은 연관 배열을 반환합니다.

    어느

    는 생략 :

    $json_output = json_decode($json); 
    

    또는 액세스 items를 배열로 :

    foreach ($json_output['response']['groups'][0]['items'] as $items) 
    
+0

아에게 그런 바보 같은 실수를 내 부분에. 좋은 대답. – jethomas

0

이미 json에있는 문자열에 json_encode를 사용하고 있습니다. 대신 json_decode를 시도하십시오.)

관련 문제