//초기화
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.sample.com");
//결과에 헤더값을 포함 (TRUE, FALSE)
curl_setopt($ch, CURLOPT_HEADER, FALSE);
//연결 대기 시간(초). 무한정 대기는 0
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
//cURL 함수를 실행할 수있는 최대 시간 (초)
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
//TRUE 설정 시 curl_exec () 반환 값의 문자열을 반환
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//HTTP 요청에 사용되는 User-Agent 헤더 내용
curl_setopt($ch, CURLOPT_USERAGENT, "sample");
//FALSE로 설정 시 cURL이 피어의 인증서를 확인하지 못하게합니다.
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, TRUE);
// 1 은 SSL 피어 인증서의 일반 이름의 존재를 확인합니다.
// 2 를 사용하여 공통 이름이 있는지 확인하고 제공된 호스트 이름과 일치하는지 확인
// 0 은 이름을 확인하지 않음. 프로덕션 환경에서이 옵션의 값은 2 (기본값) 로 유지해야합니다 .
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
// TRUE는 일반 HTTP POST를 수행.
curl_setopt($ch, CURLOPT_POST, 1);
//HTTP "POST"작업으로 게시 할 전체 데이터.
curl_setopt($ch, CURLOPT_POSTFIELDS, Array());
//CURL 실행
//curl_exec()의 결과는 Boolean 값. 출력되는 결과(문자)물을 받기위해서는 CURLOPT_RETURNTRANSFER 옵션을 사용해야 한다.
//여기서 헤매다가 file_get_contents를 사용했다가 지적.. 보안을 위해 file_get_contents는 지양.
$result = curl_exec($ch);
//CURLINFO_HTTP_CODE 정보(200 or 400)
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
//결과를 json 디코딩하여 출력. true 시 배열. 기본 오브젝트.
$recv = json_decode($result, true);
//curl 닫기
curl_close($ch);
'IT지식 > 개발' 카테고리의 다른 글
[MySql] TINYINT (0) | 2020.05.20 |
---|---|
[MySQL] UNSIGNED 사용하기 및 범위 (0) | 2020.05.20 |
[MySQL] GROUP BY 그룹화 하여 조회하기 (0) | 2020.03.02 |
[책] 생활코딩! PHP+MySQL 후기 (0) | 2020.02.17 |
[Linux] awk 명령어 사용하기. awk '{print}' (0) | 2020.02.16 |