php的http数据传输get/post...

php的http数据传输get/post...

一般有:file_get_contents,curl,fsockopen....

下面介绍fsockopen:

 //构造要post的字符串
       $argv = $_POST;
        $data = http_build_query($argv);
        $length = strlen($data);
        //创建socket连接
        $fp = fsockopen("order.com",80,$errno,$errstr,10) or exit($errstr."--->".$errno);
        //构造post请求的头
        $header = "POST /pay/sub HTTP/1.1\r\n";
        $header .= "Host:order.com\r\n";
        $header .= "Content-Type: application/x-www-form-urlencoded\r\n";
        $header .= "Content-Length: ".$length."\r\n";
        $header .= "Connection: Close\r\n\r\n";
        //添加post的字符串
        $header .= $data."\r\n";
        //发送post的数据
        fputs($fp,$header);
        $inheader = 1;
        while (!feof($fp)) {
            $line = fgets($fp,10240); //去除请求包的头只显示页面的返回数据
            if ($inheader && ($line == "\n" || $line == "\r\n")) {
                $inheader = 0;
            }
            if ($inheader == 0) {
                //echo $line;
            }
        }
        echo $line;
        exit;

  

 

还有他人封装好的:Requests类。

 

 


 

posted @ 2017-05-18 10:52  穆晟铭  阅读(320)  评论(0编辑  收藏  举报