hhajhh 发表于 2017-12-29 22:00:13

PHP HTTP请求

/**  * Socket版本
  * 使用方法:
  * $post_string = "app=socket&version=beta";
  * request_by_socket('blog.snsgou.com', '/restServer.php', $post_string);
  */
  
function request_by_socket($remote_server,$remote_path,$post_string,$port = 80,$timeout = 30) {
  $socket = fsockopen($remote_server, $port, $errno, $errstr, $timeout);
  if (!$socket) die("$errstr($errno)");
  fwrite($socket, "POST $remote_path HTTP/1.0");
  fwrite($socket, "User-Agent: Socket Example");
  fwrite($socket, "HOST: $remote_server");
  fwrite($socket, "Content-type: application/x-www-form-urlencoded");
  fwrite($socket, "Content-length: " . (strlen($post_string) + 8) . "");
  fwrite($socket, "Accept:*/*");
  fwrite($socket, "");
  fwrite($socket, "mypost=$post_string");
  fwrite($socket, "");
  $header = "";
  while ($str = trim(fgets($socket, 4096))) {
  $header .= $str;
  }
  

  $data = "";
  while (!feof($socket)) {
  $data .= fgets($socket, 4096);
  }
  

  return $data;
  
}
页: [1]
查看完整版本: PHP HTTP请求