易截截图软件、单文件、免安装、纯绿色、仅160KB

查看页面执行php占用内存情况

今天头脑一热,想看一下页面在执行的过程中占用了多少内存,我也不知道这样做的目的是什么,可能是出于我的惯性思维吧。不过这样做也不是完全没用,
你可以清楚的知道哪些页面占用的内存比较多,特别是对于使用共用主机的网站,一般空间商都会限制每个网站的资源占用情况的(包括cpu和内存)。万一在我
们不知道的情况下,经常占用太多的内存,你愿意,空间商可不同意了。当然这种情况是很少出现的。
memory_get_usage
php提供了一个查看分配的内存大小的函数memory_get_usage,原型如下
int memory_get_usage ([ bool $real_usage = false ] )
$real_usage为可选参数,默认为false(即不包括memory_get_usage本身占用的内存),memory_get_usage(true)可查看包括memory_get_usage在内的内存占用情况。
该函数默认返回的是占用内存的字节数,我们可以通过除以1024来以KB为单位,再除以1024以MB为单位。
使用方法
对于wordpress,我们只需要在主题文件夹下的footer.php文件调用memory_get_usage函数即可
<?php printf(‘ memory usage: %01.2f MB’, memory_get_usage()/1024/1024); ?>
该语句的输出以MB为单位,小数点后保留2位。具体效果可以参看本站的底部。
题外话
当然,如果你想做一个详细的测试,可以在页面代码执行之前、模板调用之前以及页面代码执行完毕之后分别调用该函数以做对比,以下是我做的测试:
一、在页面代码执行之前调用memory_get_usage,即在根目录下的index.php文件的最开始部分加入上面的代码,结果在0.3M左右。
二、在模板调用之前,即在主题文件夹下的header.php文件的最开始部分调用memory_get_usage,结果在11M左右。说明wordpress在调用模板之前已经加载了大量的数据。
三、在页面代码执行完毕之后,即在主题文件夹下的footer.php文件的最后部分调用memory_get_usage,结果因页面的不同而不
同,不过也都差不多在12M以下。说明主题本身的php调用没有占用多少内存。如果这个结果很高的话,就要检查一下你的主题文件了。
以上结果因为主机的不同而不同,因wordpress的不同而不同,因主题的不同而不同,因各种因素的不同而不同……仅做参考。
另外,如果你想测试某段代码执行后的内存使用情况,可以在代码执行之前和执行之后分别调用memory_get_usage,从而可以看出那段代码对内存的影响。


相关文档:

FastCGI 不完全高级指南(PHP版,Windows平台)

一、FastCGI是什么?
FastCGI是语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。众所周知,CGI解释 器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性、Fail- Over特性等等。
FastCGI的官 ......

php 字符串、文件转化成二进制流文件

$file1 = 'F:/46.gif';
$file2 = 'F:/test.txt';
$file3 = 'F:/47.gif';
$size = filesize($file1);
echo '文件大小为:'.$size;
echo "\n<br>转化为二进制 ...";
$content = file_get_contents($file1);
$content = bstr2bin($content);
$fp = fopen($file2, 'w');
fwrite($fp, $content);
fclose($fp);
......

一个php分页设计

www.diybl.com 时间:2008-06-01 作者:佚名
将其保存成一个文件,用时调用
<?
//为了避免重复包含文件而造成错误,加了判断函数是否存在的条件:
if(!function_exists(pageft)){
//定义函数pageft(),三个参数的含义为:
//$totle:信息总数;
//$displaypg:每页显示信息数,这里设置为默认是20;
//$url:分 ......

MySQL+PHP乱码原理与解决

本文从 http://tech.ddvip.com/2009-02/1235627800109815.html 装载,非常感谢作者!
MySQL+PHP产生乱码原因:
  ◆ MySQL数据库默认的编码是utf8,如果这种编码与你的PHP网页不一致,可能就会造成MySQL乱码;
  ◆ MySQL中创建表时会让你选择一种编码,如果这种编码与你的网页编码不一致,也可能造成MySQL乱码;
  ......

php+mysql编码问题总结

要不出现乱码,就要保持数据库和页面的编码格式一致.我全部使用utf-8的编码.
首先页面:
 1. 将文件用UE打开,将文件另存为UTF-8无BOM格式.很多编辑器都可用.
 2.使用 header("content-type:text/html; charset=utf-8"); 强制转换成utf-8的编码.
   也可以新建一个head.php,如下,在页面中用include( ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号