1
0
mirror of https://github.com/e107inc/e107.git synced 2025-07-31 03:40:37 +02:00

Show peak memory usage as well if supported

This commit is contained in:
e107steved
2007-07-12 21:34:39 +00:00
parent a811893ee7
commit 028713a8f9

View File

@@ -11,9 +11,9 @@
| GNU General Public License (http://gnu.org). | GNU General Public License (http://gnu.org).
| |
| $Source: /cvs_backup/e107_0.8/e107_handlers/e107_class.php,v $ | $Source: /cvs_backup/e107_0.8/e107_handlers/e107_class.php,v $
| $Revision: 1.7 $ | $Revision: 1.8 $
| $Date: 2007-04-12 08:10:20 $ | $Date: 2007-07-12 21:34:39 $
| $Author: lisa_ $ | $Author: e107steved $
+----------------------------------------------------------------------------+ +----------------------------------------------------------------------------+
*/ */
@@ -240,30 +240,45 @@ class e107{
return $this->_host_name_cache[$ip_address]; return $this->_host_name_cache[$ip_address];
} }
// Return a memory value formatted helpfully
function ret_memory_text($memusage)
{
$memunit = 'b';
if ($memusage > 65536)
{
$memusage = $memusage / 1024; // more than 64k, show in k
$memunit = 'kb';
}
if ($memusage > 1024)
{ /* 1.002 mb, etc */
$memusage = $memusage / 1024;
$memunit = 'Mb';
}
if ($memusage > 1024)
{ /* show in GB if >1GB */
$memusage = $memusage / 1024;
$memunit = 'Gb';
}
return (number_format($memusage, ($memunit=='b'? 0 : 3)).$memunit);
}
/** /**
* Get the current memory usage of the code * Get the current memory usage of the code
* *
* @return string memory usage * @return string memory usage
*/ */
function get_memory_usage(){ function get_memory_usage(){
if(function_exists("memory_get_usage")){ if(function_exists("memory_get_usage"))
$memusage = memory_get_usage(); {
$memunit = 'b'; $ret = $this->ret_memory_text(memory_get_usage());
if ($memusage > 65536){ // With PHP>=5.2.0, can show peak usage as well
$memusage = $memusage / 1024; // more than 64k, show in k if (function_exists("memory_get_peak_usage")) $ret .= '/'.$this->ret_memory_text(memory_get_peak_usage(TRUE));
$memunit = 'kb'; return $ret;
} }
if ($memusage > 1024){ /* 1.002 mb, etc */ else
$memusage = $memusage / 1024; {
$memunit = 'mb'; return ('Unknown');
}
if ($memusage > 1024){ /* show in GB if >1GB */
$memusage = $memusage / 1024;
$memunit = 'gb';
}
return (number_format($memusage, ($memunit=='b'? 0 : 3)).$memunit);
} else {
return ('Unknown');
} }
} }