欢迎访问宙启技术站
智能推送

PHP函数:计算文件大小并将其格式化为方便阅读的字符串

发布时间:2023-09-21 07:30:42

要计算文件大小并将其格式化为方便阅读的字符串,可以使用以下的PHP函数:

function formatFileSize($bytes) {
    $units = array('B', 'KB', 'MB', 'GB', 'TB');

    $base = log($bytes, 1024);
    $size = round(pow(1024, $base - floor($base)), 2);
    $unit = $units[floor($base)];

    return $size . ' ' . $unit;
}

// 例子用法
$fileSize = filesize('path/to/file.txt');
$formattedSize = formatFileSize($fileSize);
echo '文件大小: ' . $formattedSize;

这个函数将接受文件大小(以字节为单位)作为参数,并返回一个格式化后的字符串表示文件大小。它将计算文件大小并将其转换为合适的单位(字节、千字节、兆字节等),并四舍五入到小数点后两位。例如,如果文件大小是4356202字节,函数将返回"4.16 MB"。

函数在内部使用对数运算来确定文件大小应该使用的单位,然后通过将结果四舍五入到两个小数位来获取大小的小数值。最后,函数根据单位的数组返回格式化的字符串。

请注意:这只是一个示例函数,可能不会考虑到一些特殊情况,例如文件大小超过TB。您可以根据自己的需求进行修改和扩展。