php cURL

PHP 2012. 4. 30. 18:54

cURL (Client URL Library Functions)이라는 모듈을 서버에 깔다음 실행해야 합니다.

이것이 하는 역할은 내가 원하는 주소의 페이지에서 내가 임의의 값을 넣고 그 넣은 값으로 페이지에서 리턴되는 값을 받아오는 역할입니다.

 

$ch = curl_init([String url])        /* curl 세션의 초기화 [파라메터는 선택사항]. */

curl_setopt($ch, OPTION, VALUE)  /* curl 옵션을 세팅한다. */

curl_setopt 의 OPTION
      CURLOPT_HEADER    : 헤더 정보를 받기 원한다면 이 옵션을 추가한다. VALUE : 1 OR true
      CURLOPT_NOBODY    : 본문의 정보를 받기 원하지 않는다면 이 옵션을 추가한다.
      CURLOPT_TIMEOUT  : curl 타임아웃을 설정한다.
      CURLOPT_URL            : 접속할 url정보를 설정
      CURLOPT_REFERER  : 리퍼러 정보를 설정
      CURLOPT_USERAGENT : 에이전트 정보를 설정
      CURLOPT_POST          : 전송 메소드를 post로 정의한다.
      CURLOPT_POSTFIELDS: POST 메소드라면 파라미터 값들을 이 옵션에 정의하면된다.

 

curl_exec($ch)      /* curl을 실행 */

curl_errno($ch)    /* 에러번호를 가져온다. */

curl_error($ch)    /* 에러 메시지를 가져온다. */

curl_getinfo($ch)  /* 상태 정보를 리턴한다. */

curl_close($ch)  /* curl 세션을 닫는다 */

 curl을 이용한 Gmail 로그인 예제.


$src = "https://".$gmailId.":".$gmailPw."@mail.google.com/mail/feed/atom";

$ch = curl_init();

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, TRUE);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST,true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_USERAGENT, 'My Agent Name');
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt');

$res = curl_exec($ch);

curl_close($ch);

/** 결과는 Atom xml 형식이다. DOM 또는 xml 파싱 function을 이용해서 파싱하면 됩니다. **/
echo $res;

?>

'PHP' 카테고리의 다른 글

PHP 함수 모음  (0) 2012.05.08
정리  (0) 2012.05.04
PHP 코딩 팁  (0) 2012.04.23
PHP 난수 (시리얼 만들기)  (2) 2012.04.09
git 가편 사용법 펌  (0) 2012.04.09
블로그 이미지

스마트전

,