| Server IP : 89.248.107.232 / Your IP : 216.73.217.70 Web Server : Apache System : Linux host2.kasilh.com 5.14.0-687.36.1.el9_8.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Aug 7 05:40:49 EDT 2026 x86_64 User : seg ( 10005) PHP Version : 7.4.33 Disable Function : opcache_get_status MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/vhosts/seg-sa.es/gessing.es/wp-content/plugins/akeebabackupwp/app/Solo/Helper/ |
Upload File : |
<?php
/**
* @package solo
* @copyright 2014-2016 Nicholas K. Dionysopoulos / Akeeba Ltd
* @license GNU GPL version 3 or later
*/
namespace Solo\Helper;
abstract class Format
{
/**
* Format a size in bytes in a human readable format (e.g. 1.2Gb)
*
* @param integer $sizeInBytes The size to convert, in bytes
* @param integer $decimals Accuracy, in decimal points (default: 2)
* @param boolean|string $force_unit Force a particular unit? Choose one of b, Kb, Mb, Gb, Tb or false for
* automatic determination of the best unit.
* @param string $dec_char Decimal separator character, default dot
* @param string $thousands_char Thousands separator character, default none
*
* @return string The formatted number
*/
public static function fileSize($sizeInBytes, $decimals = 2, $force_unit = false, $dec_char = '.', $thousands_char = '')
{
if ($sizeInBytes <= 0)
{
return '-';
}
$units = array('b', 'Kb', 'Mb', 'Gb', 'Tb');
if ($force_unit === false)
{
$unit = floor(log($sizeInBytes, 2) / 10);
}
else
{
$unit = $force_unit;
}
if ($unit == 0)
{
$decimals = 0;
}
return number_format($sizeInBytes / pow(1024, $unit), $decimals, $dec_char, $thousands_char) . ' ' . $units[$unit];
}
}