您好,欢迎访问一九零五行业门户网

全能的字节单位转换函数

容量单位计算,支持定义小数保留长度;定义起始和目标单位,或按1024自动进位
class util {    /**     * 容量单位计算,支持定义小数保留长度;定义起始和目标单位,或按1024自动进位     *      * @param int $size,容量计数     * @param type $unit,容量计数单位,默认为字节     * @param type $decimals,小数点后保留的位数,默认保留一位     * @param type $targetunit,转换的目标单位,默认自动进位     * @return type 返回符合要求的带单位结果     */    static function filesizeconv($size, $unit = 'b', $decimals = 1, $targetunit = 'auto') {        $units = array('b', 'kb', 'mb', 'gb', 'tb', 'pb', 'eb');        $theunit = array_search(strtoupper($unit), $units); //初始单位是哪个        //判断是否自动计算,        if ($targetunit != 'auto')            $targetunit = array_search(strtoupper($targetunit), $units);        //循环计算        while ($size >= 1024) {            $size/=1024;            $theunit++;            if ($theunit == $targetunit)//已符合给定则退出循环吧!                break;        }        return sprintf(%1\$.{$decimals}f, $size) . $units[$theunit];    }}
复制代码
echo util::filesizeconv(6461310554654);结果:5.9tb
复制代码
其它类似信息

推荐信息