Php 使用 fsockopen发送http请求

<?php 
      function HTTP_Post($URL,$data, $referrer="") { 

        // parsing the given URL 
        $URL_Info=parse_url($URL); 

        // Building referrer 
        if($referrer=="") // if not given use this script as referrer 
          $referrer=$_SERVER["SCRIPT_URI"]; 

        // making string from $data 
        foreach($data as $key=>$value) 
          $values[]="$key=".urlencode($value); 
        $data_string=implode("&",$values); 

        // Find out which port is needed - if not given use standard (=80) 
        if(!isset($URL_Info["port"])) 
          $URL_Info["port"]=80; 

        // building POST-request: 
        $request.="POST ".$URL_Info["path"]." HTTP/1.1\n"; 
        $request.="Host: ".$URL_Info["host"]."\n"; 
        $request.="Referer: $referer\n"; 
        $request.="Content-type: application/x-www-form-urlencoded\n"; 
        $request.="Content-length: ".strlen($data_string)."\n"; 
        $request.="Connection: close\n"; 
        $request.="\n"; 
        $request.=$data_string."\n"; 

        $fp = fsockopen($URL_Info["host"],$URL_Info["port"]); 
        fputs($fp, $request); 
        while(!feof($fp)) { 
            $result .= fgets($fp, 128); 
        } 
        fclose($fp); 

        return $result; 
      } 

      $output1=HTTP_Post("http://www.example.com/script1.php",$_POST); 
      $output2=HTTP_Post("http://www.example.net/script2.php",$_POST); 
?>

注意:

Host:对应的值不能带有http://




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值