curl를 이용해서 웹 이미지 다운로드
이번에는 전체 소스가 없습니다.
초기에 만들고 계속 수정에 수정을 거듭하다보니 저 혼자만 사용할 수 있는 조금 난해한 코드들이 넘쳐나게 되
간한히 함수랑 사용방법의 코드만 올려 놓습니다.
public function getImage($url)
{
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // 인증서 체크같은데 true 시 안되는 경우가 많다.
curl_setopt($ch, CURLOPT_POST, false); // Post Get 접속 여부
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 60); // TimeOut 값
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); //http 응답코드가 302일때 redirect_url 로 따라감
curl_setopt($ch, CURLOPT_MAXREDIRS, 5); //if http server gives redirection responce
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 결과값을 받을것인지
$data = curl_exec($this->ch);
$return = base64_encode($data);
return $return;
}
위에 함수를 사용하면은 웹에서 이미지를 가져 올 수 있습니다.
이미지의 접속가능한 URL이 있어야 접속이 됩니다.
$curlDataImg = new curlData();
$returnImgBase64 = $curlDataImg->getImage($urlImg);
$imageSource = base64_decode( $returnImgBase64 );
위에 코드를 이용해서 이미지의 바이너리를 확인해 볼 수 있습니다.
그리고 나서 자신이 로컬에 바이너리 형식으로 저장을 하거나 하시면 됩니다.