变量的内存运用情况..
对变量进行null赋值有用吗??我们今天来测试下..
- <?php
- $a = memory_get_usage();
- $str = 'aaa';
- $str = 'abc';
- $b = memory_get_usage();
- echo $b-$a;
这个例子在我这里输出的是176..也就是使用了176个字节..
下面我们给变量赋值null后再进行第二次赋值再看看
- <?php
- $a = memory_get_usage();
- $str = 'aaa';
- $str = null; //注意这里..
- $str = 'abc';
- $b = memory_get_usage();
- echo $b-$a;
得出的结果是160字节..这说明了什么??
给变量进行null赋值后..内存也被释放了..而你如果没有进行这一步骤..
aaa这个字符串还会存在在内存中的..
但是另外一个奇怪的现象..
如果我们不是字符串..也就是把上面的例子赋值为数字..
那么得到的内存是一样的..
那这又说明了什么??
我没有看过PHP的源码..不敢妄自下结论..
但是我更觉得PHP的内存就像Java..有一块内存是静态的..用来存放字符串等类型的..
但这只是一种猜测..
总之..以后赋值字符串前.试着先进行null赋值..可以节省内存:)
3 Comments to “ 变量的内存运用情况.. ”
Post comment
分类目录
- ActionScript (2)
- CSS (25)
- Java (3)
- JavaScript (41)
- PHP (108)
- 心情杂谈 (34)
- 收集整理 (77)
- 本站原创 (57)
最近文章
- 在sae中利用SaeFetchurl进行豆瓣的OAuth授权
- OAuth 1.0a与1.0协议的改进…
- 深入理解OAuth与豆瓣OAuth test
- include_path+__autoload与数组+__autoload的比较
- 将google ssl设置为IE8的默认搜索引擎..
- 我们来做一个会呼吸的菜单吧!!
- 在编译php-fpm0.6的时候需要注意的一些问题
- 使用PHP将大文件导入到数据库中..
- 关于用PHP调用WebService中参数为complexType的问题
- 神奇的两次按位非运算符
- 百路推免费短网址服务..首创”收藏夹获取短网址”..
- 哥学社正式上线..
- jQuery中getJSON跨域原理详解
- Web辅助工具条(原名:河蟹工具条CrabBar)0.1发布
- 腾讯微博PC端发图教程
近期评论
- 老飞的小窝 在 jQuery中getJSON跨域原理详解 上的评论
- Jackie.Hamos 在 将google ssl设置为IE8的默认搜索引擎.. 上的评论
- Elmer Zhang 在 在sae中利用SaeFetchurl进行豆瓣的OAuth授权 上的评论
- 茶叶蛋 在 一个PHP+AJAX留言板的完整例子.非常简单! 上的评论
- 9527 在 我们为什么要抛弃模板引擎?? 上的评论
- hikurasai 在 Flash TagCloud中文版. 上的评论
- lx 在 PHP上传进度条深度解析 上的评论
- lx 在 使用PHP将大文件导入到数据库中.. 上的评论
- nflauthentic 在 哥学社正式上线.. 上的评论
- uggsale 在 有三个主题的CSS导航菜单 上的评论
文章归档
- 2010 年八月 (4)
- 2010 年七月 (3)
- 2010 年六月 (4)
- 2010 年五月 (2)
- 2010 年四月 (9)
- 2010 年三月 (12)
- 2010 年二月 (1)
- 2010 年一月 (3)
- 2009 年十二月 (2)
- 2009 年十一月 (3)
- 2009 年十月 (3)
- 2009 年九月 (5)
- 2009 年八月 (4)
- 2009 年七月 (6)
- 2009 年六月 (8)
- 2009 年五月 (8)
- 2009 年四月 (16)
- 2009 年三月 (19)
- 2009 年二月 (22)
- 2009 年一月 (20)
- 2008 年十二月 (38)
- 2008 年十一月 (22)
- 2008 年十月 (7)
- 2008 年九月 (3)
- 2008 年八月 (24)
标签
.net
AJAX
button
Comet
CSS
Discuz!
DIV+CSS
Flash
Form
Google
HTML编辑器
IE8
Java
JavaScript
jQuery
JSP
md5
MySQLReback
OAuth
Oracle
PHP
php-fpm
PNG
Punny
SkiyoTabs
tab
TagCloud
Vista
Web2.0
Windows7
上传
加密
图标
本站原创
模板
模板引擎
源码
登录
短网址
石家庄
算法
类
编译
面向对象
魔术方法

Jessica

应该是栈和堆这个区别。局部变量是在栈中生成。这是系统自动分配的,节省内存方面用不到。
而堆是在堆中由程序员中申请的,这才会有C++中使用delete释放内存和JAVA中GC机制了。
PS:刚学习PHP,无意进入你的页面。被你好学精神感动。有意加Q:198710200
unset()
我这里两种情况下是一样的