PHP使用CURL模拟POST和GET请求

在PHP中想要构造类似GET和POST请求,在一些APP或者等后端功能开发中是有这种需求。
在PHP语言当中有file_get_content ()函数和curl的支持。
在PHP>5.3 的版本中默认两者都是开启的。

1、GET请求实现

直接写代码了,就不再叙述,有需要的朋友直接Ctrl+C+Ctrl+V即可

&gt?php
function httpGET($target_url, $get_data = array()){
    $result = @file_get_content($target_url.'/?'.http_build_query($get_data));
    return $result;
}
/*
*    方法2
*/
function httpGET2($target_url, $get_data = array()){
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $target_url.'/?'.http_build_query($get_data));
    curl_setopt($curl, CURLOPT_HEADER, 1);
     curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $data = curl_exec($curl);
     curl_close($curl);
    return $data;
}
?<

2、POST 请求实现

POST请求没法儿使用file_get_content ()函数来实现,所以只有使用curl方法来实现

&gt?php
function httpPOST($url , $post_data = array()){
  $curl = curl_init();
  curl_setopt($curl, CURLOPT_URL, $url);
  curl_setopt($curl, CURLOPT_HEADER, 1);
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($curl, CURLOPT_POST, 1);
  curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
  curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post_data));
  $response = curl_exec($curl);
  curl_close($curl);
  return $response;
}
?<

给TA打赏
共{{data.count}}人
人已打赏
源码分享

PHP使用curl模拟ip和来源进行访问

2019-9-9 22:08:33

源码分享

动态密码访问网页 防洪X站专用

2019-9-16 14:02:42

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
有新私信 私信列表
搜索