$ch
= curl_init();
# 设定url和把结果返回,是否返回头部
curl_setopt(
$ch
, CURLOPT_URL,
'http://www.baidu.com/'
);
curl_setopt(
$ch
, CURLOPT_RETURNTRANSFER, 1);
curl_setopt(
$this
->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, 1);
curl_setopt(
$this
->ch, 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
);