| Server IP : 81.19.159.101 / Your IP : 216.73.217.111 Web Server : Apache System : Linux www58.world4you.com 4.18.0-553.126.2.lve.el8.x86_64 #1 SMP Thu May 28 14:12:30 UTC 2026 x86_64 User : ftp8817043 ( 2681) PHP Version : 8.4.21 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /home/.sites/103/site8817043/web/wp-content/plugins/akeebabackupwp/app/Solo/Helper/ |
Upload File : |
<?php
/**
* @package solo
* @copyright Copyright (c)2014-2025 Nicholas K. Dionysopoulos / Akeeba Ltd
* @license GNU General Public License 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', 'PB');
if ($force_unit === false)
{
$unit = floor(log($sizeInBytes, 2) / 10);
}
else
{
$unit = $force_unit;
}
if ($unit == 0)
{
$decimals = 0;
}
return number_format($sizeInBytes / (1024 ** $unit), $decimals, $dec_char, $thousands_char) . ' ' . $units[$unit];
}
}