有没有一种方法可以在不下载文件的情况下获得远程文件http://my_url/my_file.txt的大小?
发布于 2011-11-17 06:09:24
试试这段代码
function retrieve_remote_file_size($url){
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_NOBODY, TRUE);
$data = curl_exec($ch);
$size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
curl_close($ch);
return $size;
}
发布于 2010-04-09 02:56:32
好的。发出一个仅包含报头的请求,并查找Content-Length
报头。
发布于 2014-05-25 18:25:43
我不确定,但是你不能使用get_headers函数吗?
$url = 'http://example.com/dir/file.txt';
$headers = get_headers($url, true);
if ( isset($headers['Content-Length']) ) {
$size = 'file size:' . $headers['Content-Length'];
}
else {
$size = 'file size: unknown';
}
echo $size;
https://stackoverflow.com/questions/2602612
复制相似问题