PHP curl实现get/post/delete/put封装

来源:互联网 发布:php mvc框架有哪些 编辑:程序博客网 时间:2024/05/19 16:34
//postfunction curl_post($url = '', $post_data = false,$header=[]){    $ch = curl_init();    curl_setopt($ch, CURLOPT_URL, $url);    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    // post数据    curl_setopt($ch, CURLOPT_POST, 1);    // post的变量    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);    //设置头    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);    curl_setopt($ch, CURLOPT_USERAGENT,  'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36');    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//这个是重点,不进行ssl验证,HTTPS就乖乖打开吧 .    $output = curl_exec($ch);    curl_close($ch);    return $output;}function curl_put($url = '', $put_data = false,$header=[]){    $ch = curl_init();    curl_setopt($ch, CURLOPT_URL, $url); //定义请求地址    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//定义是否直接输出返回流    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); //定义请求类型,必须为大写    //curl_setopt($ch, CURLOPT_HEADER,1); //定义是否显示状态头 1:显示 ; 0:不显示    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);//定义header    curl_setopt($ch, CURLOPT_POSTFIELDS, $put_data); //定义提交的数据    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//这个是重点。    $res = curl_exec($ch);    curl_close($ch);//关闭    return $res;}function curl_del($url,$header) {    $ch = curl_init();    curl_setopt($ch, CURLOPT_URL, $url);    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'DELETE');    //设置头    curl_setopt($ch, CURLOPT_HTTPHEADER, $header); //设置请求头    curl_setopt($ch, CURLOPT_USERAGENT,  'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36');    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//SSL认证。    $output = curl_exec($ch);    curl_close($ch);    return $output;}function curl_get($url,$header){    $ch = curl_init();    curl_setopt($ch, CURLOPT_URL, $url);    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);    //curl_setopt($ch, CURLOPT_HEADER, 1)#我不需要获取头部啊;    //设置头    curl_setopt($ch, CURLOPT_HTTPHEADER, $header);    curl_setopt($ch, CURLOPT_USERAGENT,  'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36');    curl_setopt($ch, CURLOPT_AUTOREFERER, true);    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);    curl_setopt($ch, CURLOPT_MAXREDIRS, 10);    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 16);    curl_setopt($ch, CURLOPT_TIMEOUT, 300);    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');    $output = curl_exec($ch);    curl_close($ch);    return  $output;}
0 0