Curl 模拟get、 post、put 请求以及上传文件

1,Curl 模拟GET请求

 //初始化
 $ch = curl_init();
 //设置请求地址L
 curl_setopt($ch, CURLOPT_URL, "http://www.nettuts.com");
 //设置响应不直接输出到页面,1为不直接输出
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 //设置是否输出请求头信息,0为不输出
 curl_setopt($ch, CURLOPT_HEADER, 0);
 //执行并获取HTML文档内容
 $output = curl_exec($ch);
 //释放curl句柄
 curl_close($ch);

2,Curl 模拟POST 请求

 //curl 初始化
 $ch = curl_init($url);
 //设置请求头(可有可无)
 curl_setopt($ch,CURLOPT_HTTPHEADER,$header);
 curl_setopt($ch, CURLOPT_HEADER, 0);
 //设置是否不直接输出
 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
 //设置请求方式
 curl_setopt($ch, CURLOPT_POST, 1);
 //设置传输字段
 curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
 //执行
 $out_put = curl_exec($ch);
 //释放curl句柄
 curl_close($ch);

3,Curl 模拟put请求

//curl 初始化
$ch = curl_init($url); 
//设置请求头(可有可无)
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
//定义是否显示响应状态头 1:显示 ; 0:不显示
curl_setopt($ch, CURLOPT_HEADER,0); 
//定义请求类型
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "put"); 
//设置是否不直接输出
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); 
//定义提交的数据
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); 
//执行
$out_put = curl_exec($ch);
//释放curl句柄
curl_close($ch);

4,Curl 上传文件

header('content-type:text/html;charset=utf8');
$url = "http://".$_SERVER['HTTP_HOST']."/index.php?a=upfile";
$post_data = array(
      'type' => 'attach',
      'file' => new \CURLFile(realpath('a.txt'))
);
$ch = curl_init($url);
curl_setopt($ch , CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,  CURLOPT_SAFE_UPLOAD, false);
curl_setopt($ch , CURLOPT_POST, 1);
curl_setopt($ch , CURLOPT_POSTFIELDS, $post_data);
$output = curl_exec($ch);
curl_close($ch);
echo $output;
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值