CURL是PHP的一个扩展,利用该扩展可以实现服务器之间的数据或文件传输,用来采集网络中的html网页文件、其他服务器提供接口数据等.
GET请求
POST请求
这是我项目中一直在用的一个方法
php
if(empty($url))?return?$url;
$curl?=?curl_init();
curl_setopt($curl,?CURLOPT_URL,$url);//请求url地址
curl_setopt($curl,?CURLOPT_HTTPHEADER?,?$header?);?//构造IP
if(!empty($params)?count($params)?0){
curl_setopt($curl,?CURLOPT_POST,?true);
//Request?Payload格式数据
if(isset($params['is_json'])?$params['is_json']?===?true){
unset($params['is_json']);
$params?=?json_encode($params);
}else{
$params?=?http_build_query($params);
}
curl_setopt($curl,?CURLOPT_POSTFIELDS,?$params);??
//curl_setopt($curl,?CURLOPT_HEADER,?true);//是否返回响应头信息
curl_setopt($curl,?CURLOPT_RETURNTRANSFER,?true);//是否将结果返回
curl_setopt($curl,?CURLOPT_FOLLOWLOCATION,?true);//是否重定向
curl_setopt($curl,?CURLOPT_SSL_VERIFYPEER,?false);?//?只信任CA颁布的证书?
//curl_setopt($curl,?CURLOPT_CAINFO,?$cacert);?//?CA根证书(用来验证的网站证书是否是CA颁布)?
//?从证书中检查SSL加密算法是否存在
curl_setopt($curl,?CURLOPT_SSL_VERIFYHOST,?FALSE);
curl_setopt($curl,?CURLOPT_HTTP_VERSION,?CURL_HTTP_VERSION_1_0);?
//curl_setopt($curl,?CURLOPT_HTTPHEADER,?array("Expect:?"));?
curl_setopt($curl,?CURLOPT_CONNECTTIMEOUT,?$timeout);//用来告诉PHP脚本在成功连接服务器前等待多久(连接成功之后就会开始缓冲输出),这个参数是为了应对目标服务器的过载,下线,或者崩溃等可能状况;
curl_setopt($curl,?CURLOPT_TIMEOUT,?$timeout);//用来告诉成功PHP脚本,从服务器接收缓冲完成前需要等待多长时间.如果目标是个巨大的文件,生成内容速度过慢或者链路速度过慢,这个参数就会很有用.
//?自动设置Referer
curl_setopt($curl,?CURLOPT_AUTOREFERER,?1);
//setcookie('cookie_jar',?$cookie_jar);?//保存cookie路径
$data?=?curl_exec($curl);?//执行?
curl_close($curl);
return?$data;
今天我们向大家介绍的是在PHP中的php curl的几种使用方式,希望对有需要的朋友有所帮助.
或者只获取body:
以上就是土嘎嘎小编为大家整理的php中使用curl方法介绍,php相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!