>백엔드 개발 >PHP 튜토리얼 >PHP CURL에서 쿠키를 전달하는 방법

PHP CURL에서 쿠키를 전달하는 방법

高洛峰
高洛峰원래의
2016-10-17 10:52:261227검색

컬의 쿠키 사용 방법 초보자는 컬에 매개 변수가 너무 많아서 쿠키 부분에 4가지가 포함됩니다.

물론 매뉴얼에는 컬에 쿠키가 3개 있다고 명시되어 있지만 쿠키를 포함할 수 있는 헤더 매개변수도 있습니다.

curl은 사용하기 매우 쉽습니다. 가장 중요한 것은 컬_setopt의 사용법을 숙지하는 것입니다.

curl_setopt ($ch, CURLOPT_COOKIE , $cookie );

여기의 쿠키 값은 & 대신에 구분되어야 합니다. urlencode 인코딩을 사용할 필요는 없습니다. 물론 인코딩하면 더 좋을 것입니다.

$cookie = "a=b;c=d;name=Fang Shiyu";

이것을 사용하는 경우에는 컬_setopt($ch, CURLOPT_HTTPHEADER, $header)에서 사용할 수 없습니다. );

의 $header에는 쿠키 매개변수가 포함되어 있습니다. 그렇지 않으면 매개변수가 겹쳐서 예측할 수 없는 쿠키 동작이 발생합니다.

<? php
$url = "http://www.test.com/zzzz.php";
$post_data = array (
    "foo" =< "bar",
    "query" =< "Nettuts",
    "action" =< "Submit"
);
$cookie_jar_index = &#39;f:/js/test/cookie.txt&#39;;
$cookie = "a=b;c=d;name=方世玉";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// 我们在POST数据哦!
curl_setopt($ch, CURLOPT_POST, 1);
// 把post的变量加上
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$output = curl_exec($ch);
curl_close($ch);
echo $output;

첨부된 코드는 IE에서 쿠키를 분석하는데 사용되는 코드입니다

<? php
function join_cookie($cook)
{
    foreach( $cook as $k=<$v )
    {
   $d[] =$k."=".$v;
    }
$data = implode(";",$d);
return $data;
}
function pase_cookie($cookFile,$encode=true)
{
$cookie = file_get_contents ( $cookFile );
$citem = explode("*\n",$cookie);
foreach( $citem as $c )
{
list($ckey,$cvalue) = explode("\n",$c);
if($ckey!=&#39;&#39;)$cook[$ckey] = $cvalue;
}
return $cook;
}


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