Переглянути джерело

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 9 роки тому
батько
коміт
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));