代码:<?php
function teacher_curl($url, $paras = array())
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
if (@$paras['Header']) {
$Header = $paras['Header'];
} else {
$Header[] = "Accept:*/*";
$Header[] = "Accept-Encoding:gzip,deflate,sdch";
$Header[] = "Accept-Language:zh-CN,zh;q=0.8";
$Header[] = "Connection:close";
}
curl_setopt($ch, CURLOPT_HTTPHEADER, $Header);
if (@$paras['ctime']) { // 连接超时
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $paras['ctime']);
} else {
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
}
if (@$paras['rtime']) { // 读取超时
curl_setopt($ch, CURLOPT_TIMEOUT, $paras['rtime']);
}
if (@$paras['post']) {
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $paras['post']);
}
if (@$paras['header']) {
curl_setopt($ch, CURLOPT_HEADER, true);
}
if (@$paras['cookie']) {
curl_setopt($ch, CURLOPT_COOKIE, $paras['cookie']);
}
if (@$paras['refer']) {
if ($paras['refer'] == 1) {
curl_setopt($ch, CURLOPT_REFERER, 'http://m.qzone.com/infocenter?g_f=');
} else {
curl_setopt($ch, CURLOPT_REFERER, $paras['refer']);
}
}
if (@$paras['ua']) {
curl_setopt($ch, CURLOPT_USERAGENT, $paras['ua']);
} else {
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36");
}
if (@$paras['nobody']) {
curl_setopt($ch, CURLOPT_NOBODY, 1);
}
curl_setopt($ch, CURLOPT_ENCODING, "gzip");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
if (@$paras['GetCookie']) {
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);
preg_match_all("/Set-Cookie: (.*?);/m", $result, $matches);
$headerSize = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
$header = substr($result, 0, $headerSize); //状态码
$body = substr($result, $headerSize); //响应内容
$ret = [
"Cookie" => $matches, "body" => $body, "code" => $header
];
curl_close($ch);
return $ret;
}
$ret = curl_exec($ch);
if (@$paras['loadurl']) {
$Headers = curl_getinfo($ch);
$ret = $Headers['redirect_url'];
}
curl_close($ch);
return $ret;
}使用方法文档GET访问echo teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545");POST访问echo teacher_curl("http://api.4dn.net/djyule/djyule.php",[
'post'=>[
'id'=>'385545'
]
]);或echo teacher_curl("http://api.4dn.net/djyule/djyule.php ",[
'post'=>'id=385545'
]);携带Cookie访问echo teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545 ",[
'cookie'=>'cookie内容'
]);模拟访问来源Referecho teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545 ",[
'refer'=>'http://api.4dn.net'
]);模拟UseaAgentecho teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545",[
'ua'=>'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
]);文件上传echo teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545",[
'post'=>[
'file'=>new CURLFile(realpath("Curl.jpg"))
]
]);或echo teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545",[
'post'=>new CURLFile(realpath("Curl.jpg"))
]);获取301跳转地址echo teacher_curl("https://mmbizurl.cn/s/RNHSo6Dek",[
'loadurl'=>1
]);查看返回Header信息echo teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545",[
'header'=>1
]);设置请求头信息echo teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545",[
'Header'=>[
'accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3
accept-encoding: gzip, deflate, br
accept-language: zh-CN,zh;q=0.9
cache-control: max-age=0'
]
]);获取POST以后返回的Header、Body、Cookie内容echo teacher_curl("http://api.4dn.net/djyule/djyule.php?id=385545",[
'post'=>[
'user'=>123456,
'pwd'=>123
],
'GetCookie'=>1
]);
评论
172条评论小白 Lv.1 回复
真牛逼 感谢分享
美国
Eason Lv.1
Chrome 86.0.4240.198
Windows 回复
感谢楼主
,好人一生平安
中国 移动
mm123123 Lv.1 回复
哈哈哈的还是
湖南省湘潭市 电信
青苍.dw Lv.1 回复
你喊的我
四川省泸州市 移动
13064290136 Lv.1
Chrome 98.0.4758.102
Windows 回复
可以,解决了我的通点
云南省 联通
六一 Lv.1
Chrome 97.0.4692.99
Windows 回复
111w2的我的胃额外的哇
湖北省 电信
嘻游人间 Lv.1 回复
6666姐姐
上海市 鹏博士长城宽带
66 Lv.1 回复
牛逼
四川省成都市 联通
-铭白 Lv.1 回复
556555555牛逼
山东省济宁市 移动
褚赢 Lv.1 回复
,,。,。。?来咯哦哦
河北省唐山市 电信