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 |