PHP管理内存函数 memory_get_usage()使用介绍


Posted in PHP onSeptember 23, 2012

下面是PHP memory_get_usage()使用示例:

echo memory_get_usage(), '<br />'; //143952 
$tmp = str_repeat('http://blog.micxp.com/', 4000); 
echo memory_get_usage(), '<br />'; //232048 
unset($tmp); 
echo memory_get_usage(); //143952

上面的程序后面的注释代表了它们的输出(单位为 byte(s)),也就是当时 PHP 脚本使用的内存(不含 memory_get_usage() 函数本身占用的内存)

由上面的例子可以看出,要想减少内存的占用,可以使用 PHP unset() 函数把不再需要使用的变量删除。类似的还有:PHP mysql_free_result() 函数,可以清空不再需要的查询数据库得到的结果集,这样也能得到更多可用内存。

PHP memory_get_usage()还可以有个参数,$real_usage,其值为布尔值。默认为 FALSE,表示得到的内存使用量不包括该函数(PHP 内存管理器)占用的内存;当设置为 TRUE 时,得到的内存为包括该函数(PHP 内存管理器)占用的内存。

所以在实际编程中,可以用PHP memory_get_usage()比较各个方法占用内存的高低,来选择使用哪种占用内存小的方法。

常用的检测:

用microtime函数就可以分析程序执行时间
memory_get_usage可以分析内存占用空间
SQL的效率可以使用打开慢查询查看日志分析
SQL 找到有瓶颈的使用EXPLAIN 来分析

PHP 相关文章推荐
linux环境apache多端口配置虚拟主机的方法深入介绍
Jun 09 PHP
php中apc缓存使用示例
Dec 25 PHP
PHP正则表达式替换站点关键字链接后空白的解决方法
Sep 16 PHP
ThinkPHP模版中导入CSS和JS文件的方法
Nov 29 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
Mar 25 PHP
php函数重载的替代方法--伪重载详解
May 08 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
Oct 10 PHP
详解WordPress中简码格式标签编写的基本方法
Dec 22 PHP
PHP简单实现二维数组赋值与遍历功能示例
Oct 19 PHP
laravel获取不到session的三种解决办法【推荐】
Sep 16 PHP
PHP CURL中传递cookie的方法步骤
May 09 PHP
PHP 进程池与轮询调度算法实现多任务的示例代码
Nov 26 PHP
查找mysql字段中固定字符串并替换的几个方法
Sep 23 #PHP
php获取ip的三个属性区别介绍(HTTP_X_FORWARDED_FOR,HTTP_VIA,REMOTE_ADDR)
Sep 23 #PHP
PHP分多步骤填写发布信息的简单方法实例代码
Sep 23 #PHP
PHP 中关于ord($str)&amp;gt;0x80的详细说明
Sep 23 #PHP
PHP+MySQL投票系统的设计和实现分享
Sep 23 #PHP
详解php的魔术方法__get()和__set()使用介绍
Sep 19 #PHP
php引用计数器进行垃圾收集机制介绍
Sep 19 #PHP
You might like
php fckeditor 调用的函数
2009/06/21 PHP
探讨:array2xml和xml2array以及xml与array的互相转化
2013/06/24 PHP
php文字水印和php图片水印实现代码(二种加水印方法)
2013/12/25 PHP
PHP中的日期加减方法示例
2014/08/21 PHP
php将数组转换成csv格式文件输出的方法
2015/03/14 PHP
PHP模板引擎Smarty内置变量调解器用法详解
2016/04/11 PHP
PHP+Mysql无刷新问答评论系统(源码)
2016/12/20 PHP
PHP token验证生成原理实例分析
2019/06/05 PHP
把textarea中字符串里含有的回车换行替换成&amp;lt;br&amp;gt;的javascript代码
2007/04/20 Javascript
用JS实现一个TreeMenu效果分享
2011/08/28 Javascript
浅谈EasyUI中Treegrid节点的删除
2015/03/01 Javascript
js实现3D图片逐张轮播幻灯片特效代码分享
2015/09/09 Javascript
window.onload使用指南
2015/09/13 Javascript
javascript类型系统 Array对象学习笔记
2016/01/09 Javascript
jQuery基于$.ajax设置移动端click超时处理方法
2016/05/14 Javascript
jQuery实现右下角可缩放大小的层完整实例
2016/06/20 Javascript
简单实现js鼠标跟随效果
2020/08/02 Javascript
react native仿微信PopupWindow效果的实例代码
2017/08/07 Javascript
js数组去重的N种方法(小结)
2018/06/07 Javascript
在NPM发布自己造的轮子的方法步骤
2019/03/09 Javascript
Nuxt.js实现一个SSR的前端博客的示例代码
2019/09/06 Javascript
简单了解JavaScript sort方法
2019/11/25 Javascript
解决Vue + Echarts 使用markLine标线(precision精度问题)
2020/07/20 Javascript
[02:15]2015国际邀请赛选手档案IG.Ferrari 430
2015/07/30 DOTA
Python中getattr函数和hasattr函数作用详解
2016/06/14 Python
Python 使用list和tuple+条件判断详解
2019/07/30 Python
wxPython实现分隔窗口
2019/11/19 Python
pytorch1.0中torch.nn.Conv2d用法详解
2020/01/10 Python
JSP和EJB可以共享HttpSession么?EJB里面可以改变session里面的内容
2013/06/05 面试题
十一个高级MySql面试题
2014/10/06 面试题
菜篮子工程实施方案
2014/03/08 职场文书
节能环保演讲稿
2014/08/28 职场文书
事业单位人员的自我评价范文
2014/09/21 职场文书
高一地理教学工作总结
2015/08/12 职场文书
2016年元旦寄语
2015/08/17 职场文书
2016春季幼儿园大班开学寄语
2015/12/03 职场文书