直接獲取header中cookie(sessionid)用來繼續請求php
$url = 'test.com'; //url地址 $post = "id=user&pwd=123456"; //POST數據//或GET $ch = curl_init($url); //初始化 curl_setopt($ch,CURLOPT_HEADER,1); //將頭文件的信息做爲數據流輸出 curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //返回獲取的輸出文本流 curl_setopt($ch,CURLOPT_POSTFIELDS,$post); //發送POST數據 $content = curl_exec($ch); //執行curl並賦值給$content preg_match('/Set-Cookie:(.*);/iU',$content,$str); //正則匹配 $cookie = $str[1]; //得到COOKIE(SESSIONID) curl_close($ch); //關閉curl/*-----使用COOKIE-----*/ curl_setopt($ch,CURLOPT_COOKIE,$cookie);//設置cookie再次請求
保存到文件用來請求cookie
$cookie_jar = dirname(__FILE__)."/pic.cookie"; $url = "http://test.com/"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar); $content = curl_exec($ch); curl_close($ch); //以後的請求 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://test.com/check.action?'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); $ret = curl_exec($ch); curl_close($ch);