php curl 을 이용하여
파일을 전송하려고 하다보면
생각처럼 간단하게 전송이 되지 않습니다.
검색해보니 여러가지 방법이 있었는데요,
그중에서 제가 해결한 방법을 공유하려고 합니다.
바로 curl_file_create 라는 내장함수를 이용하는 방법입니다.
1. 우선 컨트롤러로 전달받을 파일을 로컬 서버에 업로드 합니다.
2. 그리고는 아래와 같이 curl_file_create 에 파라미터로 실제 파일이 위치한 경로를 입력해줍니다.
3. curl 에 postfields 에 $data 라는 배열에 담아서 전송합니다.
$data = array();
$data["image"] = curl_file_create("FILE_REAL_PATH");
$header = array();
$header[] = 'Content-Type: multipart/form-data';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$res = curl_exec($ch);
curl_close($ch);
답글 남기기