0

ユーザーまたはタグに基づいて、関連するすべてのメディアを取得するアプリケーションを作成しています。メディアにアクセスできましたが、下にあるユーザーのプロフィール写真の解像度data/user/profile_pictureがかなり悪いです (約 150*150px)。

だから私の質問は: ユーザー プロファイルの写真をより大きなサイズで取得する方法はありますか? メディアを取得するために使用するクエリは次のとおりです。

https://api.instagram.com/v1/users/3/media/recent/?access_token=ACCESS-TOKEN

https://api.instagram.com/v1/tags/snow/media/recent?access_token=ACCESS-TOKEN
4

1 に答える 1

3

これは 600x600 のプロファイル画像を取得します。

function Request($url) {

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);  
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
    curl_setopt($ch, CURLOPT_HEADER, 0);  

    $result = curl_exec($ch);

    curl_close($ch);

    return $result;

}

function get_value($username, $att, $accesstoken) {

    $url = "https://api.instagram.com/v1/users/search?q=" . $username . "&access_token=" . $accesstoken;

    if($result = json_decode(Request($url), true)) {
        if ($att == "full_name") {
            return preg_replace("/[^A-Za-z0-9 ]/", '',  $result['data'][0][$att]);
        } elseif ($att == "profile_picture") {
            $res = str_replace("s480x480", "s600x600", $result['data'][0][$att]);
            $res = str_replace("s320x320", "s600x600", $res); 
            $res = str_replace("s150x150", "s600x600", $res); 
            return $res; 
        } else {
         return $result['data'][0][$att];
        }
    }

}

使用例:

$profile_picture = get_value("USERNAME","profile_picture", "ACCESS_TOKEN");
于 2015-12-12T08:01:12.810 に答える