CURL請求

一般的CURL

//1.啓動一個curl事務,也可以此時不設置,通過curl_setopt($curl,CURLOPT_URL,'http://unun.in')進行設置
//$curl = curl_init('https://pic3.zhimg.com/e8fdec7f795d217f16faa1e2cd100522_l.png');
$curl = curl_init('https://www.baidu.com');
//2.可以多次調用curl_setopt進行設置
//curl_setopt($curl);
//爲真時,設置curl_exec()返回的數據以文件流(字符串)的形式返回,而不是直接輸出
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
//curl_setopt($curl,CURLOPT_HEADER,0);

//對於https協議出錯的可以嘗試設置本項
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);

//3.使用curl_exec執行事務
$res = curl_exec($curl);
//header('Content-Type:image/png');
echo $res;
//4.關閉curl
curl_close($curl);

帶文件頭的CURL

$curl = curl_init();
//curl_setopt($curl,CURLOPT_URL,'https://www.zhihu.com/people/wangerhei/activities');
curl_setopt($curl,CURLOPT_URL,'https://www.zhihu.com/r/answers/43605938/comments');
//設置結果不直接顯示
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
//準備header的數據
$header = array();


$header['Cookie'] = 'd_c0="AGCAoFMCkwqPTh-wcRVLXiGFBxs5ekDyHZ0=|1474444304"; _zap=3c3e3731-8d47-4e57-bf24-a94bb89cf783; q_c1=bba15b027188466c990086af0b50d481|1479798296000|1474444304000; a_t="2.0AADA-lQjAAAXAAAAeX5nWAAAwPpUIwAAAGCAoFMCkwoXAAAAYQJVTdJSU1gAUBRJmD8n25v-homhR22_um1e6X09tdek5gL1tJZhqKqK-yJ3LJTuVQ=="; l_cap_id="MzdhNWJhNTJjMTEzNDg1NjhhNzc2YzdjMTg3NTIxMzg=|1481726617|32d4449b9db83f73e44d77d7d9fd15146f1bd925"; cap_id="N2Y5NWMwZGU0YzAyNDY3ZmJlZGI3MzQ0MGRlZjdmMzU=|1481726617|f82e436128dac750d45f30cfe614910c98e145c3"; __utmt=1; __utma=51854390.1190671945.1481555213.1481625674.1481725968.5; __utmb=51854390.4.10.1481725968; __utmc=51854390; __utmz=51854390.1481625674.4.3.utmcsr=zhihu.com|utmccn=(referral)|utmcmd=referral|utmcct=/; __utmv=51854390.000--|2=registration_date=20140102=1^3=entry_date=20160921=1; r_cap_id="MjY3ZGMwMTlkZThlNDUwZjg2YWFmNTFiYjlmYWI5OGE=|1481726618|72e7f8a0741bda1186d4e8429c428704c70b7e6e"; login="ZjQ4MDMzMmM4NTYzNGRmNzlmZGFkMGZjZTYyMzAwYzU=|1481726654|9686c9a66dbc58c16bfd6e92935addaa1105e94b"; z_c0=Mi4wQUFEQS1sUWpBQUFBWUlDZ1V3S1RDaGNBQUFCaEFsVk52dWQ0V0FCMUpQdHZ2Q1pWY1lZQlJWeU9pWUVMMEk5a2RR|1481726654|4f020b40cd5db4fde8a325c6423d343a28b56f24; n_c=1';


//設置header的數據
curl_setopt($curl,CURLOPT_HTTPHEADER,$header);
//爲真時會發送POST請求
curl_setopt($curl,CURLOPT_POST,1);

//curl_setopt($curl,CURLOPT_ENCODING,'gzip');
$data = "{'content':'牛逼到不行!'}";
curl_setopt($curl,CURLOPT_POSTFIELDS,$data);

$res = curl_exec($curl);

print_r(json_decode($res,true));
curl_close($curl);

CURL上傳

//1.啓動一個curl事務
$curl = curl_init();
//2.可以多次調用curl_setopt進行設置
//請求地址
curl_setopt($curl,CURLOPT_URL,'http://localhost/oop/3.php');
//爲真時,設置curl_exec()返回的數據以文件流(字符串)的形式返回,而不是直接輸出
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
//爲真時會發送POST請求
curl_setopt($curl,CURLOPT_POST,1);
//設置POST過去的數據
//普通的post請求
///$data = array('a'=>'abc','b'=>222);
//curl_setopt($curl,CURLOPT_POSTFIELDS, $data);


//如果通過CURLOPT_POSTFIELDS設置上傳文件的話,在PHP5.5以後的版本需要設置CURLOPT_SAFE_UPLOAD爲假,爲使用不安全模式
curl_setopt($curl,CURLOPT_SAFE_UPLOAD,0);
//單文件上傳
//$data = array('a'=>'abc','b'=>222,'file'=>'@./1.png');
//多文件上傳
$data = array('a'=>'abc','b'=>222,'file[0]'=>'@./1.png','file[1]'=>'@./2.png;type=image/png');
curl_setopt($curl,CURLOPT_POSTFIELDS, $data);



//3.使用curl_exec執行事務
$res = curl_exec($curl);
//4.關閉curl
curl_close($curl);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章