方法一:header http/1.1 200 ok
[date] => sat, 29 may 2004 12:28:14 gmt
[server] => apache/1.3.27 (unix) (red-hat/linux)
[last-modified] => wed, 08 jan 2003 23:11:55 gmt
[etag] => 3f80f-1b6-3e1cb03b
[accept-ranges] => bytes
[content-length] => 438
[connection] => close
[content-type] => text/html
)
?>
方法二function getfilesize($url)
{
$url = parse_url($url);
if($fp = @fsockopen($url['host'],emptyempty($url['port'])?80:$url['port'],$error))
{
fputs($fp,get .(emptyempty($url['path'])?'/':$url['path']). http/1.1\r\n);
fputs($fp,host:$url[host]\r\n\r\n);
while(!feof($fp))
{
$tmp = fgets($fp);
if(trim($tmp) == '')
{
break;
}
elseif(preg_match('/content-length:(.*)/si',$tmp,$arr))
{
return trim($arr[1]);
}
}
return null;
}
else
{
return null;
}
} 方法三:function remote_filesize($uri,$user='',$pw='')
{
// start output buffering
ob_start();
// initialize curl with given uri
$ch = curl_init($uri);
// make sure we get the header
curl_setopt($ch, curlopt_header, 1);
// make it a http head request
curl_setopt($ch, curlopt_nobody, 1);
// if auth is needed, do it here
if (!emptyempty($user) && !emptyempty($pw))
{
$headers = array('authorization: basic ' . base64_encode($user.':'.$pw));
curl_setopt($ch, curlopt_httpheader, $headers);
}
$okay = curl_exec($ch);
curl_close($ch);
// get the output buffer
$head = ob_get_contents();
// clean the output buffer and return to previous
// buffer settings
ob_end_clean();
echo '
head-->'.$head.'';
// gets you the numeric value from the content-length
// field in the http header
$regex = '/content-length:\s([0-9].+?)\s/';
$count = preg_match($regex, $head, $matches);
// if there was a content-length field, its value
// will now be in $matches[1]
if (isset($matches[1]))
{
$size = $matches[1];
}
else
{
$size = 'unknown';
}
//$last=round($size/(1024*1024),3);
//return $last.' mb';
return $size;
} 方法四:$fcont = file_get_contents(http://www.weiyeying.cn/);
echo strlen($fcont)/1024;
ad:真正免费,域名+虚机+企业邮箱=0元