php读取远程服务文件
下面来看看根据php读取远程服务文件
<?php
function get_content($url) {
if (!strpos($url, '://')) return 'Invalid URI';
$content = '';
if (ini_get('allow_url_fopen')) {
$content = file_get_contents($url);
} elseif (function_exists('curl_init')) {
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $url);
curl_setopt($handle, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($handle, CURLOPT_FOLLOWLOCATION, 0);
$content = curl_exec($handle);
curl_close($handle);
} elseif (function_exists('fsockopen')) {
$urlinfo = parse_url($url);
$host = $urlinfo['host'];
$str = explode($host, $url);
$uri = $str[1];
unset($urlinfo, $str);
$content = '';
$fp = fsockopen($host, 80, $errno, $errstr, 30);
if (!$fp) {
$content = 'Can Not Open Socket...';
} else {
$out = "GET $uri HTTP/1.1rn";
$out.= "Host: $host rn";
$out.= "Accept: */*rn";
$out.= "User-Agent: $_SERVER[HTTP_USER_AGENT]rn";
$out.= "Connection: Closernrn";
fputs($fp, $out);
while (!feof($fp)) {
$content.= fgets($fp, 4069);
}
fclose($fp);
}
}
if (empty($content)) $content = 'Can Not';
return $content;
}本文地址:http://www.phprm.com/code/902741892ca9b6b2f059a9c274787351.html
转载随意,但请附上文章地址:-)