u

외부이미지 서버에 저장하기

스크린샷 2015-05-06 오후 11.22.51.png

데모 

 

<?php

//ver1.0 150409 @_untitle_d

 

function save_remote_image($url, $save_path)

{

    $ch = curl_init ($url);

    curl_setopt($ch, CURLOPT_HEADER, 0); // required

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    curl_setopt($ch, CURLOPT_BINARYTRANSFER, 1); // required for images

    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // maybe redirect on other side?

    curl_setopt($ch, CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3'); // or user agent checks?

    $data=curl_exec($ch);

    curl_close ($ch);

$chars_array = array_merge(range(0,9), range('a','z'), range('A','Z'));

//아래의 문자열이 들어간 파일은 -x 를 붙여서 웹경로를 알더라도 실행을 하지 못하도록 함

$filename = preg_replace("/\.(php|phtm|htm|cgi|pl|exe|jsp|asp|inc)/i", "$0-x", basename($url));

shuffle($chars_array);

$shuffle = implode("", $chars_array);

//첨부파일 첨부시 첨부파일명에 공백이 포함되어 있으면 일부 PC에서 보이지 않거나 다운로드 되지 않는 현상이 있습니다. (길상여의 님 090925)

$change_filename = abs(ip2long($_SERVER[REMOTE_ADDR])).'_'.substr($shuffle,0,8).'_'.str_replace('%', '', urlencode(str_replace(' ', '_', $filename)));

$out_path = $save_path.$change_filename;

    if(file_exists($out_path)) @unlink($out_path);

    $fp = fopen($out_path,'x');

    fwrite($fp, $data);

    fclose($fp);

return $change_filename;

}

 

$url = 'http://i.imgur.com/OJws8NX.png'; //외부이미지

$save_path = $_SERVER[DOCUMENT_ROOT].'/data/remote/'; 타겟폴더

$remote_image = 'http://'.$_SERVER[SERVER_NAME].'/data/remote/'.save_remote_image($url, $save_path);

?>

 

<img src="<?=$remote_image?>"><br>

<?=$remote_image?>

 

 

 

 

 

관련링크

http://untitled.untitle311apyxry1w48.com/pjtecuh

 

 

 

참고

http://sir.co.kr/

http://stackoverflow.com/questions/7375021/php-retrieve-and-save-remote-image

http://phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_function&wr_id=292925 

|

댓글 1개

좋은정보 감사합니다. ^^
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
10년 전 조회 2,290
10년 전 조회 1,654
10년 전 조회 2,017
10년 전 조회 2,310
10년 전 조회 2,737
10년 전 조회 4,055
10년 전 조회 2,863
10년 전 조회 3,009
10년 전 조회 3,473
10년 전 조회 5,118
10년 전 조회 2,682
10년 전 조회 1,855
10년 전 조회 3,564
10년 전 조회 2,002
10년 전 조회 2,253
10년 전 조회 2,996
10년 전 조회 1,895
10년 전 조회 1,899
10년 전 조회 4,201
10년 전 조회 1,914
10년 전 조회 1,814
10년 전 조회 1,821
10년 전 조회 1,716
10년 전 조회 2,226
10년 전 조회 1,950
10년 전 조회 1,825
10년 전 조회 1,968
10년 전 조회 2,475
10년 전 조회 3,311
10년 전 조회 2,357
10년 전 조회 2,605
10년 전 조회 3,149
10년 전 조회 2,527
10년 전 조회 2,347
10년 전 조회 2,260
10년 전 조회 5,144
10년 전 조회 1,944
10년 전 조회 2,263
10년 전 조회 2,818
10년 전 조회 2,263
10년 전 조회 3,944
10년 전 조회 2,193
10년 전 조회 2,154
10년 전 조회 2,229
10년 전 조회 5,793
10년 전 조회 2,097
10년 전 조회 3,655
10년 전 조회 2,951
10년 전 조회 3,575
10년 전 조회 3,198
10년 전 조회 3,901
10년 전 조회 2,068
10년 전 조회 2,373
10년 전 조회 4,152
10년 전 조회 2,524
10년 전 조회 1,923
10년 전 조회 2,906
10년 전 조회 2,646
10년 전 조회 2,384
10년 전 조회 2,361
10년 전 조회 2,588
10년 전 조회 2,223
10년 전 조회 1,819
10년 전 조회 2,569
10년 전 조회 3,015
10년 전 조회 2,570
10년 전 조회 2,612
10년 전 조회 3,272
10년 전 조회 4,317
10년 전 조회 1,986
10년 전 조회 1,994
10년 전 조회 2,463
10년 전 조회 2,712
10년 전 조회 2,230
10년 전 조회 1,900
10년 전 조회 2,067
10년 전 조회 2,172
10년 전 조회 2,397
10년 전 조회 2,532
10년 전 조회 3,239
10년 전 조회 1,856
10년 전 조회 2,066
11년 전 조회 6,150
11년 전 조회 1,935
11년 전 조회 2,419
11년 전 조회 2,367
11년 전 조회 2,841
11년 전 조회 2,275
11년 전 조회 2,540
11년 전 조회 2,586
11년 전 조회 2,992
11년 전 조회 2,765
11년 전 조회 3,617
11년 전 조회 2,998
11년 전 조회 3,089
11년 전 조회 2,204
11년 전 조회 2,465
11년 전 조회 2,411
11년 전 조회 2,083
11년 전 조회 1,906