实现获取http内容的php函数分享

时间:2022-04-04 15:51:26

复制代码 代码如下:


<?php
function http_open($url, $data, $cookie = null, $method = "GET", $timeout = 60) {
 $options = array();
 $options['http']['method'] = $method;
 $options['http']['user_agent'] = $_SERVER['HTTP_USER_AGENT'];
 $options['http']['timeout'] = $timeout;
 if($method == "POST") :
  $length = strlen($data);
  $options['http']['header'] = "Content-type: application/x-www-form-urlencoded\r\n".
  "Content-Length: {$length}\r\n".
  "P3P: CP=\"CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR\"\r\n".
  "cookie: {$cookie}\r\n".
  "Connection: close\r\n";
  $options['http']['content'] = $data;
 else:
  $options['http']['header'] = "Content-type: application/x-www-form-urlencoded\r\n".
  "P3P: CP=\"CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR\"\r\n".
  "cookie: {$cookie}\r\n".
  "Connection: close\r\n";
 endif;

 $context = stream_context_create($options);
 return file_get_contents($url, 0, $context);
}
echo http_open("http://localhost/1.php", "username=haowei", "id=5", "POST");