跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

php socket方式提交的post详解_PHP教程

/*** POST报文到主机*/ function PostToHost($url, $data) {$url = parse_url($url);if (!$url) return "couldn't parse url";if (!isset($url['port'])) { $url['port'] = ""; }if (!isset($url['query'])) { $url['query'] = ""; }$encoded = "";while (list($k,$v) = each($data)) {$encoded .= ($encoded ? "&" : "");$encoded .= rawurlencode($k)."=".rawurlencode($v);}$port = $url['port'] ? $url['port'] : 80;$fp = fsockopen($url['host'], $port, $errno, $errstr);if (!$fp) return "Failed to open socket to $url[host] $port ERROR: $errno - $errstr";fputs($fp, sprintf("POST %s%s%s HTTP/1.0\n", $url['path'], $url['query'] ? "?" : "", $url['query']));fputs($fp, "Host: $url[host]\n");fputs($fp, "Content-type: application/x-www-form-urlencoded\n");fputs($fp, "Content-length: " . strlen($encoded) . "\n");fputs($fp, "Connection: close\n\n");fputs($fp, "$encoded\n");$line = fgets($fp,1024);if (!eregi("^HTTP/1\.. 200", $line)) return;$results = ""; $inheader = 1;while(!feof($fp)) {$line = fgets($fp,1024);if ($inheader && ($line == "\n" || $line == "\r\n")) {$inheader = 0;}elseif (!$inheader) {$results .= $line;}}fclose($fp);return $results;}/* end function PostToHost */?>http://www.bkjia.com/PHPjc/319189.html www.bkjia.com true http://www.bkjia.com/PHPjc/319189.html TechArticle? /* **POST报文到主机 */ functionPostToHost($url,$data){ $url=parse_url($url); if(!$url)return"couldn'tparseurl"; if(!isset($url['port'])){$url['port']="";} if(!isset($url...

相关文章