我想要使文件大小(),一个动态的文件大小。什么意思?
我的意思是,当我给它一个链接,链接也是动态的。filesize()将计算以Kb、Mb和Gb为单位的文件大小。
我的链接是动态的,我只想要Mb和Gb转换后的文件大小()。我要它做URL。
发布于 2020-03-12 10:56:05
这会起作用的
你也可以传递一个精度,也许你希望这个值是0。
<?php
function human_filesize($size, $precision = 2) {
$units = ['B','kB','MB','GB','TB','PB','EB','ZB','YB'];
$step = 1024;
$i = 0;
while (($size / $step) > 0.9) {
$size = $size / $step;
$i++;
}
return round($size, $precision).$units[$i];
}
function getFileSizeFromUrl($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 human_filesize($size);
}
echo getFileSizeFromUrl(" YOUR URL HERE ");https://stackoverflow.com/questions/60652069
复制相似问题