instagram apiで緯度、経度から場所idを取得してその画像を取得する
<?php
$client_id = 'my_client_id';
$client_secret = 'my_client_secret';
$redirect_uri = 'my_redirect_uri';
//アクセストークンを取得し、JSONをオブジェクト形式に変換
$obj = json_decode(@file_get_contents(
"https://api.instagram.com/oauth/access_token",
false,
stream_context_create(
array("http" => array(
"method" => "POST",
"content" => http_build_query(array(
"client_id" => $client_id,
"client_secret" => $client_secret,
"grant_type" => "authorization_code",
"redirect_uri" => $redirect_uri,
"code" => $_GET["code"],
)),
))
)
));
$user_id = $obj->user->id;
$user_name = $obj->user->username;
$user_picture = $obj->user->profile_picture;
$access_token = $obj->access_token;
header("Content-Type: text/html; charset=UTF-8");
$params = array(
"access_token" => $access_token,
"lat" => "35.69691",
"lng" => "139.793512",
);
$query = http_build_query($params);
$request_url = "https://api.instagram.com/v1/locations/search";
$obj = json_decode(@file_get_contents("{$request_url}?{$query}"));
foreach($obj->data as $item){
//ID・名前・緯度・経度
$id = $item->id;
$name = $item->name;
$latitude = $item->latitude;
$longitude = $item->longitude;
echo "{$name} (場所ID:{$id} / lat: {$latitude} long: {$longitude}" ;
}
?>
ここまではサイトを見ながらできたいのですが、特定のid(ここでは両国国技館)を持つ画像一覧を取得したい場合はこの後どのような処理をすれば良いのでしょうか?
自力で以下のコードを付け足してみたのですがうまくいかず悩んでいます。
$request_url2 = "https://api.instagram.com/v1/locations/"
$obj = json_decode(@file_get_contents("{$request_url2}/{$id}/media/recent?access_token={$access_token}"));
//個々のメディア情報
foreach($obj->data as $item) {
$text = $item->caption->text;
$image_file = $item->images->standard_resolution->url;
// 出力
echo "{$text} : <img src=\"$image_file\">";
}