49 Zeilen
		
	
	
	
		
			1,4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			49 Zeilen
		
	
	
	
		
			1,4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
/**
 | 
						|
 * This file is part of MySQLDumper released under the GNU/GPL 2 license
 | 
						|
 * http://www.mysqldumper.net
 | 
						|
 *
 | 
						|
 * @package         MySQLDumper
 | 
						|
 * @subpackage      View_Helpers
 | 
						|
 * @version         SVN: $Rev$
 | 
						|
 * @author          $Author$
 | 
						|
 */
 | 
						|
 | 
						|
/**
 | 
						|
 * Human readable byte output
 | 
						|
 *
 | 
						|
 * @package         MySQLDumper
 | 
						|
 * @subpackage      View_Helpers
 | 
						|
 */
 | 
						|
class Msd_View_Helper_ByteOutput extends Zend_View_Helper_Abstract
 | 
						|
{
 | 
						|
    /**
 | 
						|
     * Humanize byte output
 | 
						|
     *
 | 
						|
     * @param int     $bytes
 | 
						|
     * @param int     $precision
 | 
						|
     * @param boolean $useHTML
 | 
						|
     *
 | 
						|
     * @return string
 | 
						|
     */
 | 
						|
    public function byteOutput($bytes, $precision = 2, $useHtml = true)
 | 
						|
    {
 | 
						|
        $unitsLong = array('Bytes', 'KiloBytes', 'MegaBytes', 'GigaBytes',
 | 
						|
            'TeraBytes', 'PetaBytes', 'ExaBytes', 'YottaBytes');
 | 
						|
        $unitsShort = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB');
 | 
						|
        for ($level = 0; $bytes >= 1024; $level++) {
 | 
						|
            $bytes /= 1024;
 | 
						|
        }
 | 
						|
        if (!is_numeric($bytes) || !isset($unitsShort[$level])) {
 | 
						|
            return $bytes;
 | 
						|
        }
 | 
						|
        $pattern = '<span class="explain tooltip" title="%s">%s</span>';
 | 
						|
        $suffix = sprintf($pattern, $unitsLong[$level], $unitsShort[$level]);
 | 
						|
        if (!$useHtml) {
 | 
						|
            $suffix = strip_tags($suffix);
 | 
						|
        }
 | 
						|
        $ret = sprintf("%01." . $precision . "f", round($bytes, $precision));
 | 
						|
        return  trim($ret . ' ' . $suffix);
 | 
						|
    }
 | 
						|
 | 
						|
}
 |