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


Posted in PHP onDecember 06, 2011

一,函数原型
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
PHP 相关文章推荐
php include,include_once,require,require_once
Sep 05 PHP
从Web查询数据库之PHP与MySQL篇
Sep 25 PHP
UCenter中的一个可逆加密函数authcode函数代码
Jul 20 PHP
php创建基本身份认证站点的方法详解
Jun 08 PHP
PHP实现的连贯操作、链式操作实例
Jul 08 PHP
php实现模拟post请求用法实例
Jul 11 PHP
PHP sleep()函数, usleep()函数
Aug 25 PHP
PHP实现页面静态化的超简单方法
Sep 06 PHP
PHP进程通信基础之信号量与共享内存通信
Feb 19 PHP
thinkPHP5.0框架简单配置作用域的方法
Mar 17 PHP
laravel框架添加数据,显示数据,返回成功值的方法
Oct 11 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
Dec 18 PHP
PHP中文件缓存转内存缓存的方法
Dec 06 #PHP
php urlencode()与urldecode()函数字符编码原理详解
Dec 06 #PHP
PHP中实现中文字符进制转换原理分析
Dec 06 #PHP
PHP性能优化工具篇Benchmark类调试执行时间
Dec 06 #PHP
PHP性能优化准备篇图解PEAR安装
Dec 05 #PHP
PHPWind与Discuz截取字符函数substrs与cutstr性能比较
Dec 05 #PHP
php的chr和ord函数实现字符加减乘除运算实现代码
Dec 05 #PHP
You might like
Windows下PHP的任意文件执行漏洞
2006/10/09 PHP
java EJB 加密与解密原理的一个例子
2008/01/11 PHP
php获得文件大小和文件创建时间的方法
2015/03/13 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
微信公众平台开发教程⑤ 微信扫码支付模式介绍
2019/04/10 PHP
Javascript Tab 导航插件 (23个)
2009/06/11 Javascript
表格单元格交错着色实现思路及代码
2013/04/01 Javascript
JavaScript实现班级随机点名小应用需求的具体分析
2014/05/12 Javascript
Ajax清除浏览器js、css、图片缓存的方法
2015/08/06 Javascript
javascript基础语法学习笔记
2016/01/04 Javascript
javascript函数命名的三种方式及区别介绍
2016/03/22 Javascript
Angular.Js的自动化测试详解
2016/12/09 Javascript
微信小程序开发之相册选择和拍照详解及实例代码
2017/02/22 Javascript
Angular4学习之Angular CLI的安装与使用教程
2018/01/04 Javascript
Vuex中mutations与actions的区别详解
2018/03/01 Javascript
vue加载自定义的js文件方法
2018/03/13 Javascript
JS逻辑运算符短路操作实例分析
2018/07/09 Javascript
Angularjs之ngModel中的值验证绑定方法
2018/09/13 Javascript
vue 项目地址去掉 #的方法
2018/10/20 Javascript
jQuery删除/清空指定元素的所有子节点实例代码
2019/07/04 jQuery
vue页面跳转实现页面缓存操作
2020/07/22 Javascript
[01:14:05]《加油DOTA》第四期
2014/08/25 DOTA
[16:19]教你分分钟做大人——风暴之灵
2015/03/11 DOTA
[02:16]深扒TI7聊天轮盘语音出处2
2017/05/11 DOTA
用Python进行TCP网络编程的教程
2015/04/29 Python
Python获取命令实时输出-原样彩色输出并返回输出结果的示例
2019/07/11 Python
python3利用Axes3D库画3D模型图
2020/03/25 Python
Python3之外部文件调用Django程序操作model等文件实现方式
2020/04/07 Python
Python如何将装饰器定义为类
2020/07/30 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
2020/11/26 Python
HTML5地理定位实例
2014/10/15 HTML / CSS
初中家长寄语
2014/04/02 职场文书
《最佳路径》教学反思
2014/04/13 职场文书
2015年保送生自荐信
2015/03/24 职场文书
公务员处分决定书
2015/06/25 职场文书
运动会1000米加油稿
2015/07/21 职场文书