采用PHP函数memory_get_usage获取PHP内存清耗量的方法

2015-01-24信息快讯网

PHP性能优化过程中需要获取PHP内存消耗,使用memory_get_usage()函数可获取当前的内存消耗情况,函数使用简单,这里讨论一下memory_get_usage()函数的用法与实例

一,函数原型
int memory_get_usage ([ bool $real_usage = false ] )

二,版本兼容
PHP 4 >= 4.3.2, PHP 5

三,基础用法与实例
1,获取当前的内存消耗量
 
<?php 
echo memory_get_usage(); 
$var = str_repeat("liuhui", 10000); 
echo memory_get_usage(); 
unset($var); 
echo memory_get_usage(); 
?> 

分别输出:62328 122504 62416
说明:memory_get_usage()函数输出的数值为bytes单位

2,格式化memory_get_usage()输出
 
<?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)); 
?> 

输出:256 kb

3,自定义函数获取数组或变量值大小
 
<?php 
function array_size($arr) { 
ob_start(); 
print_r($arr); 
$mem = ob_get_contents(); 
ob_end_clean(); 
$mem = preg_replace("/\n +/", "", $mem); 
$mem = strlen($mem); 
return $mem; 
} 
$memEstimate = array_size($GLOBALS); 
?> 

参考资料:http://cn.php.net/manual/en/function.memory-get-usage.php
深入mysql_fetch_row()与mysql_fetch_array()的区别详解
PHP中__get()和__set()的用法实例详解
基于session_unset与session_destroy的区别详解
深入php函数file_get_contents超时处理的方法详解
详解PHP内置访问资源的超时时间 time_out file_get_contents read_file
php中用加号与用array_merge合并数组的区别深入分析
PHP Error与Logging函数的深入理解
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)
基于wordpress主题制作的具体实现步骤
setcookie中Cannot modify header information-headers already sent by错误的解决方法详解
LotusPhp笔记之:Logger组件的使用方法
如何获知PHP程序占用多少内存(memory_get_usage)
PHP管理内存函数 memory_get_usage()使用介绍
修改PHP的memory_limit限制的方法分享
PHP spl_autoload_register实现自动加载研究
PHP中文件缓存转内存缓存的方法
php的chr和ord函数实现字符加减乘除运算实现代码
PHP函数篇之掌握ord()与chr()函数应用
PHP循环语句笔记(foreach,list)
PHP中usort在值相同时改变原始位置问题的解决方法
用PHP写的基于Memcache的Queue实现代码
Linux fgetcsv取得的数组元素为空字符串的解决方法
php中$_REQUEST、$_POST、$_GET的区别和联系小结
php空间不支持socket但支持curl时recaptcha的用法
php获取远程图片的两种 CURL方式和sockets方式获取远程图片
php数组函数序列之krsort()- 对数组的元素键名进行降序排序,保持索引关系
Admin generator, filters and I18n
PHP将DateTime对象转化为友好时间显示的实现代码
PHP-CGI进程CPU 100% 与 file_get_contents 函数的关系分析
php程序的国际化实现方法(利用gettext)
php的memcached客户端memcached
PHP模块 Memcached功能多于Memcache
php模块memcache和memcached区别分析
批量获取memcache值并按key的顺序返回的实现代码
©2014-2024 dbsqp.com