>  기사  >  백엔드 개발  >  COOKIEJAR에 의존하지 않고 CURL을 사용하여 PHP에서 COOKIE를 얻는 방법

COOKIEJAR에 의존하지 않고 CURL을 사용하여 PHP에서 COOKIE를 얻는 방법

PHPz
PHPz원래의
2016-05-16 20:13:521176검색

이 기사의 예에서는 PHP가 COOKIEJAR에 의존하지 않고 CURL을 사용하여 COOKIE를 얻는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.

PHP의 CURL 클래스는 매우 훌륭한 도구 클래스입니다. 얼마나 대단한지는 자세히 설명하지 않겠습니다.

COOKIE의 경우 CURL 클래스도 매우 잘 지원하지만 유연성이 부족하고 기성 메소드를 통해 가변 메소드를 통해 얻을 수 없습니다. 다음 메소드를 통해 구현해야 합니다.

// 把COOKIE保存至cookie.txt 
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); 
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt');

먼저 COOKIE 파일을 저장한 다음 호출할 때 파일을 읽습니다. 이는 말할 필요도 없이 이것이 얼마나 효율적인지 모두가 알고 있습니다.
그렇다면 파일 쓰기와 읽기를 우회하는 방법이 있을까요? 너무 허세를 부리지 말고 코드로 바로 이동하세요.

// 初始化CURL 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
// 获取头部信息 
curl_setopt($ch, CURLOPT_HEADER, 1); 
// 返回原生的(Raw)输出 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
// 执行并获取返回结果 
$content = curl_exec($ch); 
// 关闭CURL 
curl_close($ch); 
// 解析HTTP数据流 
list($header, $body) = explode("\r\n\r\n", $content); 
// 解析COOKIE 
preg_match("/set\-cookie:([^\r\n]*)/i", $header, $matches); 
// 后面用CURL提交的时候可以直接使用 
// curl_setopt($ch, CURLOPT_COOKIE, $cookie); 
$cookie = $matches[1];

이 글이 모든 사람의 PHP 프로그래밍에 도움이 되기를 바랍니다.

더 많은 관련 튜토리얼을 보려면 초보부터 마스터까지 PHP 프로그래밍에 대한 전체 비디오 튜토리얼 세트

를 방문하세요.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.