PHP cURL初始化和执行方法入门级代码

这个是采集基础,最好熟悉一下

ch,CURLOPT_HEADER,1);

cookie文件设定

curl_setopt($this->ch,CURLOPT_COOKIEJAR,$cookie_file);
curl_setopt($this->ch,CURLOPT_COOKIEFILE,$cookie_file);

额外头部

curl_setopt($this->ch,CURLOPT_HTTPHEADER,array('User-Agent: Mozilla/5.0'));

设定post

curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$poststring);

连接、执行过期时间

curl_setopt($this->ch,CURLOPT_CONNECTTIMEOUT,5);
curl_setopt($this->ch,CURLOPT_TIMEOUT,30);

是否跟随301 302

curl_setopt($this->ch,CURLOPT_FOLLOWLOCATION,CURLOPT_MAXREDirs,10);

refer

curl_setopt($this->ch,CURLOPT_REFERER,$refer);

http版本和端口重用设置

curl_setopt($this->ch,CURLOPT_HTTP_VERSION,CURL_HTTP_VERSION_1_1);
curl_setopt($this->ch,CURLOPT_FORBID_REUSE,1);

支持https

curl_setopt($this->ch,CURLOPT_SSL_VERIFYPEER,0);
curl_setopt($this->ch,CURLOPT_SSL_VERIFYHOST,0);

如果需要进行毫秒超时,需要增加

curl_setopt($this->ch,CURLOPT_NOSIGNAL,1);

执行

$response = curl_exec($ch);
if(curl_errno($ch)){
curl_error($ch);
exit();
}
curl_close($ch);

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...