/**
* 获取URL内容
*/
function get_page_content($url) {
$url = eregi_replace('^http://', '', $url);
$temp = explode('/', $url);
$host = array_shift($temp);
$path = '/'.implode('/', $temp);
$temp = explode(':', $host);
$host = $temp[0];
$port = isset($temp[1]) ? $temp[1] : 80;
$fp = @fsockopen($host, $port, &$errno, &$errstr, 30);
if ($fp) {
@fputs($fp, "GET $path HTTP/1.1\r\nHost: $host\r\nAccept: */*\r\nReferer:$url\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)\r\nConnection: Close\r\n\r\n");
}
$Content = "";
while ($str = @fread($fp, 4096)) {
$Content .= $str;
}
@fclose($fp);
//重定向
if(preg_match("/^HTTP\/\d.\d 301 Moved Permanently/is",$Content)) {
if(preg_match("/Location:(.*?)\r\n/is",$Content,$murl)) {
return get_page_content($murl[1]);
}
}
//读取内容
if(preg_match("/^HTTP\/\d.\d 200 OK/is",$Content)) {
preg_match("/Content-Type:(.*?)\r\n/is",$Content,$murl);
$contentType=trim($murl[1]);
$Content=explode("\r\n\r\n",$Content,2);
$Content=$Content[1];
}
return $Content;
}
|