格式化memory_get_usage()输出
memory_get_usage()官方语法
代码如下
一,函数原型
int memory_get_usage ([ bool $real_usage = false ] )
<?php
function convert($size){
$unit=array('b','kb','mb','gb','tb','pb');
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).'
'.$unit[$i];
}
echo convert(memory_get_usage(true));
?>
二,版本兼容
PHP 4 >= 4.3.2, PHP 5
输出:256 kb
三,基础用法与实例
PHP memory_get_usage() 函数还可以有个参数,$real_usage,其值为布尔值。默认为 FALSE,表示得到的内存使用量不包括该函数(PHP 内存管理器)占用的内存;当设置为 TRUE 时,得到的内存为不包括该函数(PHP 内存管理器)占用的内存。
我们可以直接使用 PHP函数 memory_get_usage() 查看系统分配给当前 PHP 脚本执行占用的内存多少。
例
代码如下
代码如下
<?php
echo memory_get_usage(), '<br />'; // 79248
$tmp = str_repeat('http://3aj.cn/', 4000); // 135408
echo memory_get_usage(), '<br />';
unset($tmp);
echo memory_get_usage(); // 79248
?>
if (!function_exists('memory_get_usage'))
程序输出的数字单位为 byte(s),也就是当时 PHP 脚本使用的内存(不含 memory_get_usage() 函数本身占用的内存)。
{
function memory_get_usage()
宝马娱乐在线网址,由上面的例子可以看出,要想减少内存的占用,可以使用 PHP unset() 函数把不再需要使用的变量删除。类似的还有:PHP mysql_free_result() 函数,可以清空不再需要的查询数据库得到的结果集,这样也能得到更多可用内存。
{
PHP memory_get_usage() 函数还可以有个参数,$real_usage,其值为布尔值。默认为 FALSE,表示得到的内存使用量不包括该函数(PHP 内存管理器)占用的内存;当设置为 TRUE 时,得到的内存为不包括该函数(PHP 内存管理器)占用的内存。
$pid = getmypid();
格式化 memory_get_usage() 结果以 KB 为单位输出
if (IS_WIN)
代码如下
{
<?php
exec('tasklist /FI "PID eq ' . $pid . '" /FO LIST', $output);
function convert($size){
return preg_replace('/[^0-9]/', '', $output[5]) * 1024;
$unit=array('b','kb','mb','gb','tb','pb');
}
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).' '.$unit[$i];
else
}
本文由宝马娱乐在线发布于网络频道,转载请注明出处:获得php代码使用占用内存的情况宝马娱乐在线网