فهرست منبع

CLI: IEC prefix (binary) for units

Updated according to https://wiki.ubuntu.com/UnitsPolicy
(I got confused due `ls`, which is still using 1024 but is listed as an
exception)
And use the formatting function already included in FreshRSS
Alexandre Alapetite 10 سال پیش
والد
کامیت
6b85f8cf12
2فایلهای تغییر یافته به همراه3 افزوده شده و 9 حذف شده
  1. 1 9
      cli/user-info.php
  2. 2 0
      lib/lib_rss.php

+ 1 - 9
cli/user-info.php

@@ -2,14 +2,6 @@
 <?php
 require('_cli.php');
 
-function formatSize($bytes)
-{//http://www.php.net/manual/function.disk-free-space.php#103382
-	$si_prefix = array('', 'k', 'M', 'G', 'T', 'P');
-	$i = min((int)log($bytes, 1024), count($si_prefix) - 1);
-	return ($i <= 0) ? $bytes.'B' :
-		round($bytes / pow(1024, $i), 2).' '.$si_prefix[$i].'B';
-}
-
 $options = getopt('h', array(
 		'user:',
 	));
@@ -31,7 +23,7 @@ foreach ($users as $username) {
 		echo
 			$username, "\t",
 			date('c', FreshRSS_UserDAO::mtime($username)), "\t",
-			formatSize($entryDAO->size()), "\t",
+			format_bytes($entryDAO->size()), "\t",
 			"\n";
 	} else {
 		echo

+ 2 - 0
lib/lib_rss.php

@@ -127,6 +127,8 @@ function format_bytes($bytes, $precision = 2, $system = 'IEC') {
 	} elseif ($system === 'SI') {
 		$base = 1000;
 		$units = array('B', 'KB', 'MB', 'GB', 'TB');
+	} else {
+		return format_number($bytes, $precision);
 	}
 	$bytes = max(intval($bytes), 0);
 	$pow = $bytes === 0 ? 0 : floor(log($bytes) / log($base));