2014-10-20 2 views
-1

내가 facebbokFacebook에서 제공 한 이미지 URL로 Facebook 프로필 이미지를 저장하는 방법?

$data = file_get_contents('https://graph.facebook.com/[App-Scoped-ID]/picture?width=378&height=378&access_token=[Access-Token]'); 
$file = fopen('fblogo/fbphoto.jpg', 'w+'); 
fputs($file, $data); 
fclose($file); 

이미지를 원하는 장소에 저장하지만 0 바이트가 손상 의미로 구원에서 제공하는 URL로 페이스 북의 프로필 그림을 저장하려면 다음 코드를 사용하고, 이미지가 제대로

을 저장하는 방법을 알려 주시기 바랍니다

답변

0

나는이 사용

$image = json_decode(file_get_contents("https://graph.facebook.com/$data[id]/picture?width=800&height=600&redirect=false"),true); 
$image = file_get_contents($image['data']['url']); 
file_put_contents("desired_filename.jpg",$image); 
1

이이 스레드에서 내 대답은 다음과 같습니다 Save facebook profile image using cURL

API 호출에 redirect = false를 추가하여 그림의 실제 위치를 얻으십시오.

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/' . $app_scoped_id . '/picture?width=378&height=378&redirect=false&access_token=xxx'); 
$data = curl_exec($ch); 
$data = json_decode($data); 

이 실제 URL을 얻을 것이다, 당신은 이미지를 얻기 위해 다른 전화를 사용할 수 있습니다 : 문제가 해결되지 않는 경우에, 컬 시도

curl_setopt($ch, CURLOPT_URL, $data->data->url); 
$data = curl_exec($ch); 
curl_close($ch); 

을 그리고 그 중 하나가 작동하지 않는 경우 귀하의 제공 업체가 CURL 요청을 지원하는지 확인하십시오.

+0

CURL 답변이 훌륭합니다. 감사! –

관련 문제