>  기사  >  백엔드 개발  >  memory_limit和memory_get_usage的关系

memory_limit和memory_get_usage的关系

WBOY
WBOY원래의
2016-06-23 14:02:32966검색

    我先在服务器上测试了下,当/etc/php.ini中memory_limit设置成16M时,memory_get_usage在页面上输出30135641,这时我就纳闷了,那个数字不就是30M么,比php.ini要大啊,怎么没报警。这两者有什么关系?望朋友们解惑!!!


回复讨论(解决方案)

修改 php.ini 需要重启web服务,你也可能改错了位置

memory_limit 是可以在程序里动态修改的

echo ini_get('memory_limit');//256Mini_set('memory_limit', '5M');echo ini_get('memory_limit');//5M

ini_set('memory_limit', '5M');$a = range(1, 60000);
Fatal error: Allowed memory size of 5242880 bytes exhausted (tried to allocate 36 bytes) in ...
$a = range(1, 58995);echo memory_get_usage() * Mb;
4.9964294433594
再加一就报错

版主讲得很详细,受教了。

哦,明白了,楼上的方法很好,谢谢咯,原来上面的那个数字我看错了,本来应该是3M的,我看错30M了

我去,2楼啥时插进来的,把分都给你了,本来是给1楼的

哈哈,捡了个便宜,谢谢啦

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.