关于php内存的分配。该如何处理
程序员文章站
2022-05-26 10:43:25
...
关于php内存的分配。
$t = memory_get_usage();
// 3125000
$i = 1;
$a[$i] = $i;
$i = 1111111111;
$a[$i] = $i;
$i = '1';
$a[$i] = $i;
$i = '111111111111111111111111111';
$a[$i] = $i;
echo memory_get_usage()-$t;
?>
请问如何计算出各个占用了多少内存的。谢谢各位拉。
------解决方案--------------------
关注
ci1699 提的问题 都是好问题
------解决方案--------------------
逐次输出、观察
最好的方法是查看源码中是如何构造变量表的
------解决方案--------------------
php是基于c的,内存管理是不面向php的。
这种问题你要参考laruence大牛怎么说的。
http://www.laruence.com/2011/03/04/1894.html
http://www.laruence.com/2011/11/09/2277.html
------解决方案--------------------
你应该用memory_get_usage(TRUE)比较,如果都换成TRUE,我估计输出都是一样的
本质上,php有自己的内存管理机制,这样的需求就要求申请的时候,需要更大块内存
然后有一套自己应对内存管理结构,减少系统调用次数
------解决方案--------------------
------解决方案--------------------
我指的不是如何去申请内存的问题,而是他没有说明 php 是如何维护变量表的。
而 php 的变量应该是一个结构队列,每个每一项都应至少包括:变量名称、类型、值指针、是否是引用....
这才是我们需要关心的,而他是如何维护这张表的。却不是很重要
------解决方案--------------------
------解决方案--------------------
多好的同学啊....
------解决方案--------------------
前辈说,我们看看,受教了,谢了
------解决方案--------------------
laruence是去了php 核心開發的中國人吧
$t = memory_get_usage();
// 3125000
$i = 1;
$a[$i] = $i;
$i = 1111111111;
$a[$i] = $i;
$i = '1';
$a[$i] = $i;
$i = '111111111111111111111111111';
$a[$i] = $i;
echo memory_get_usage()-$t;
?>
请问如何计算出各个占用了多少内存的。谢谢各位拉。
------解决方案--------------------
关注
ci1699 提的问题 都是好问题
------解决方案--------------------
逐次输出、观察
最好的方法是查看源码中是如何构造变量表的
------解决方案--------------------
php是基于c的,内存管理是不面向php的。
这种问题你要参考laruence大牛怎么说的。
http://www.laruence.com/2011/03/04/1894.html
http://www.laruence.com/2011/11/09/2277.html
------解决方案--------------------
你应该用memory_get_usage(TRUE)比较,如果都换成TRUE,我估计输出都是一样的
本质上,php有自己的内存管理机制,这样的需求就要求申请的时候,需要更大块内存
然后有一套自己应对内存管理结构,减少系统调用次数
------解决方案--------------------
------解决方案--------------------
我指的不是如何去申请内存的问题,而是他没有说明 php 是如何维护变量表的。
而 php 的变量应该是一个结构队列,每个每一项都应至少包括:变量名称、类型、值指针、是否是引用....
这才是我们需要关心的,而他是如何维护这张表的。却不是很重要
------解决方案--------------------
------解决方案--------------------
多好的同学啊....
------解决方案--------------------
前辈说,我们看看,受教了,谢了
------解决方案--------------------
laruence是去了php 核心開發的中國人吧
相关文章
相关视频
上一篇: php逗号分割字符串的两种方法
下一篇: 急求软件项目文档模板!解决思路
推荐阅读
-
PHP中一个文件调用另一个文件类的方法,然后输出出现乱码,求解!该如何处理
-
PHP怎样去访问客户端的文件?该如何处理
-
PHP的生命周期 opcode缓存 什么是php的词典扫描?该如何处理
-
用php实现类似淘宝,拍拍,易趣的最近浏览商品的功能模型代码,该如何处理
-
为什么无法使用php中mysqli的准备语句进行数据库中数据的查询(绑定参数或者绑定结果),项目急用!该如何处理
-
获取JS选择到的多个ID,传参数跳转到PHP页面,该如何处理
-
thinkphp 在哪里读取的Conf/conf.php文件里的数据库配置信息,该如何处理
-
php从数据库中选取ID在数组中存在的记录,并按数组中的顺序排列?该如何处理
-
关于php的socket,该如何解决
-
初学PHP和html,要做一个自动请假系统的网站,该如何处理