사소한 개발지식/PHP

PHP - CURL관련함수 정리

KimBY 2019. 6. 6. 20:44
728x90
반응형

■ CURL (Client URL Library Functions)

 

 - 커맨드 라인에서 URL 문법을 사용하여 파일을 전송하는  

   내가 원하는 주소의 페이지에 임의의 값을 전달하고 리턴 값을 받아오는 역할

   curl 모듈을 사용하기 위해서는 curl 모듈을 서버에 설치하여야 한다.

 

 

CURL 함수 정리

 

 - curl_init : 세션 초기화, 핸들값 리턴

 - curl_setopt : 옵션 세팅 (옵션값에 대해서는 하단에 추가 설명)

 - curl_exec : curl 실행

 - curl_errno : 에러 발생 시 에러번호를 가져온다.

 - curl_error : 에러 발생 시 에러메시지를 가져온다.

 - curl_getinfo : 상태 정보를 리턴한다.

 - curl_close : curl 세션을 닫는다.

 

 

CURL_SETOPT 옵션 값

 

 - CURLOPT_FOLLOWLOCATION : TRUE로 설정 시 HTTP 헤더로 보내는 LOCATION헤더의 내용을 따른다.

 - CURLOPT_HEADER : TRUE로 설정 시 헤더의 내용을 출력

 - CURLOPT_NOBODY : TRUE로 설정 시 본문의 내용을 받지 않는다.

 - CURLOPT_ POST : 전송 메서드 설정 (1-POST / 2-GET)

 - CURLOPT_RETURNTRANSFER : TRUE로 설정 시 curl_exec()의 반환 값을 문자열로 반환

 - CURLOPT_PORT : 연결 포트 설정

 - CURLOPT_TIMEOUT : 반환 값에 대한 타임아웃 설정

 - CURLOPT_POSTFIELDS : 'POST'로 보내는 데이터 정의

 - CURLOPT_REFERER : HTTP 요청에 사용되는 REFERER헤더의 내용

 - CURLOPT_URL : 접속할 URL 주소 설정

 - CURLOPT_USERAGENT : HTTP 요청에 사용되는 User-Agent헤더의 내용

 

 

CURL 사용 예제

 

 - GET 방식

<?php
$url = "https://www.naver.com?param1=data1";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); // 연결 URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); // 반환값 문자열로 반환
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // SSL인증서 유효성검사 설정X

$res = curl_exec($ch); // CURL 실행 (반환값 -> $res)
curl_close($ch); // CURL 종료

return $res;

 - POST 방식

<?php
$param = array(
	'param1' => 'data1'
);

$url = "https://www.naver.com";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); // 연결 URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); // 반환값 문자열로 반환
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // SSL인증서 유효성검사 설정X
curl_setopt($ch, CURLOPT_POST, TRUE); // POST로 전송
curl)setopt($ch, CURLOPT_POSTFIELDS, $data); // POST로 전송할 Data

$res = curl_exec($ch); // CURL 실행 (반환값 -> $res)
curl_close($ch); // CURL 종료

return $res;
728x90
반응형