找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1432|回复: 0
打印 上一主题 下一主题

php实现模拟post请求用法实例

[复制链接]

2588

主题

2588

帖子

7694

积分

论坛元老

Rank: 8Rank: 8

积分
7694
跳转到指定楼层
楼主
发表于 2018-2-14 05:44:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了php实现模拟post请求的方法。分享给大家供大家参考。具体如下:
class Request{
public static function post($url, $post_data = '', $timeout = 5){//curl
  $ch = curl_init();
  curl_setopt ($ch, CURLOPT_URL, $url);
  curl_setopt ($ch, CURLOPT_POST, 1);
  if($post_data != ''){
   curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
  }
  curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
  curl_setopt($ch, CURLOPT_HEADER, false);
  $file_contents = curl_exec($ch);
  curl_close($ch);
  return $file_contents;
}
public static function post2($url, $data=array()){//file_get_content
  $postdata = http_build_query(
   $data
  );   
  $opts = array('http' =>
      array(
       'method' => 'POST',
       'header' => 'Content-type: application/x-www-form-urlencoded',
       'content' => $postdata
      )
  );   
  $context = stream_context_create($opts);
  $result = file_get_contents($url, false, $context);
  return $result;
}
public static function post3($host,$path,$query,$others=''){//fsocket
  $post="OST $path HTTP/1.1\r\nHost: $host\r\n";
  $post.="Content-type: application/x-www-form-";
  $post.="urlencoded\r\n${others}";
  $post.="User-Agent: Mozilla 4.0\r\nContent-length: ";
  $post.=strlen($query)."\r\nConnection: close\r\n\r\n$query";
  $h=fsockopen($host,80);
  fwrite($h,$post);
  for($a=0,$r='';!$a;){
    $b=fread($h,8192);
    $r.=$b;
    $a=(($b=='')?1:0);
   }
  fclose($h);
  return $r;
}
}
$url='http://******/con/Inter.php';
$data=Request::post($url,array('api'=>'tag_list'));
$data2=Request::post2($url,array('api'=>'tag_list'));
echo $data;
希望本文所述对大家的php程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • php中模拟POST传递数据的两种方法分享
  • php模拟post行为代码总结(POST方式不是绝对安全)
  • php 模拟POST提交的2种方法详解
  • php 模拟post_验证页面的返回状态(实例讲解)
  • php curl模拟post请求小实例
  • php curl模拟post提交数据示例
  • PHP函数分享之curl方式取得数据、模拟登陆、POST数据
  • 使用PHP Socket 编程模拟Http post和get请求
  • php模拟post提交数据的方法
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端