码迷,mamicode.com
首页 > Web开发 > 详细

PHP 计算出内存最高占用.

时间:2015-09-08 01:38:55      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

代码可以计算出内存是否完全被使用, ini设置处:memory_limit = 1024M  
代码跑完将显示如下信息:  

memory_limit:320M  
all run count: 55924054  
\$data string size:266.67MB  
run memory: 266.67MB  

可同时打开任务管理器查看内存占用, 可明显看出内存上涨过程.  
运行时间有点长, 请慢慢等待执行完成.  
测试环境, win8 apache2.4.3 PHP5.4.12

<?php  
set_time_limit(0); 
echo ‘memory_limit:‘. $memory = ini_get(‘memory_limit‘).‘‘; 
$string = str_repeat(‘abcde‘,50000);  // 运行字符串, 可修改这儿. 
$memory =($memory+0)*1024*1024; 
$runtime = memory_get_usage(); 
$runcount = abs(($memory / strlen($string)) * 0.99); // 为什么+1? 因为需要留点内存给其它变量或者计算式. 
$i = 0; 

while($i < $runcount){ 
    $i ++; 
    $data .= $string; 


echo ‘all run count: ‘.$i.‘‘; 
echo ‘\$data string size:‘. sprintf(‘%01.2f‘,strlen($data) / 1024 / 1024) .‘MB ‘; 
echo ‘run memory: ‘. sprintf(‘%01.2f‘,(memory_get_usage() - $runtime) / 1024 / 1024) .‘MB‘; 

echo ‘memory_get_peak_usage: ‘.sprintf(‘%01.2f‘,(memory_get_peak_usage() - $runtime) / 1024 / 1024) .‘MB<br>‘; 
exit();

 

PHP 计算出内存最高占用.

标签:

原文地址:http://www.cnblogs.com/u0mo5/p/4790391.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!