欢迎访问WDPHP素材源码站!又是一个不眠夜!
您好,游客 [ 马上登录 | 注册帐号 | QQ登录]
当前位置:首页 > 教程 > PHP教程 > 

PHP编程之发送POST请求的三种实现方法
栏目分类:PHP教程    发布日期:2019-06-15    浏览次数:368次     收藏

一:curl方式post发送数据的实例函数代码:

function post($url, $post_data = '', $timeout = 5){
        $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;
}

二:file_get_contents方式post发送数据的实例函数代码:

function post2($url, $data){
        $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;
}

三:fscock方式post发送数据的实例函数代码:

function post3($host,$path,$query,$others=''){
        $post="POST $path HTTP/1.1\r\nHost: $host\r\n";
        $post.="Content-type: application/x-www-form-urlencoded";
        $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;
    }
}

相关热词: PHP编程POST请求

评论1
头像 游客
友情提示:评论成功赠送5积分(每日前3次),刷评论扣8积分!
  • 头像 沙发
    2019年07月15日
    bboynam99
    P编程之发送POST请求的三种实现方法
Copyright © 2016-2018 wdphp.com 版权所有   本站由WDPHP网站管理系统强力驱动  陕ICP备16002142号
网站首页 | 交流社区 | 关于我们 | 仿站定制 | 积分获取 | 广告投放 | WPS/云主机 | 站点地图
特效 资源 源码 模板 素材 教程 站长