时间:2021-07-01 10:21:17 帮助过:5人阅读
//获取文件大小
function remote_filesize($url_file){
if (!remote_file_exists($url_file)) return false;
$headInf = get_headers($url_file,1);
return $headInf['Content-Length'];
}
//判断文件是否存在
function remote_file_exists($url_file){
$url_file = trim($url_file);
if (empty($url_file)) return false;
$url_arr = parse_url($url_file);
if (!is_array($url_arr) || empty($url_arr)) return false;
$host = $url_arr['host'];
$path = $url_arr['path'] ."?".@$url_arr['query'];
$port = isset($url_arr['port']) ?$url_arr['port'] : "80";
$fp = fsockopen($host, $port, $err_no, $err_str,30);
if (!$fp) return false;
$request_str = "GET ".$path." HTTP/1.1\r\n";
$request_str .= "Host:".$host."\r\n";
$request_str .= "Connection:Close\r\n\r\n";
fwrite($fp,$request_str);
//fread replace fgets
$first_header = fread($fp, 128);
fclose($fp);
if (trim($first_header) == "") return false;
//check $url_file "Content-Location"
if (!preg_match("/200/", $first_header) || preg_match("/Location:/", $first_header)) return false;
return true;
}
echo remote_filesize("http://wlm212.bjphp1.qq1.cc/down/ee.exe");
?>