解决PHP内存溢出的问题
Allowed memory size of 33554432 bytes exhausted (tried to allocate 4554 bytes)
有时候我们在运行php程序的时候会发现 Fatal Error: Out of memory 这样的提示。 这有可能是程序中用到了大量了变量和对象,导致分配的内存不够用。我就遇到这样一个错误怎么改也改不了,后来上网查了一些资料,可是修改了php.ini文件里的memory_limit参数,可是无论我怎么改还是有这个错误提示,特别郁闷!后来我实在没有办法了,就在QQ群里面求助,有人告诉我在我的程序代码中加入“init_set("memory_limit", "128M");”这行代码就可以了,于是我试了一下,还真的行了。现在我把自己解决这个问题的两种办法分享给大家,希望能帮到和我一样遇到类似问题的人们。
方法一:我们可以在php.ini文件中把memory_limit参数默认的128M修改为256M或者更大:
memory_limit = 128M
方法二:如果是虚拟主机,我们可以在程序需要用到大内存的地方添加:
init_set("memory_limit", "128M");
这些可以在硬件环境方面解决我们的问题,不过最好的方法还是严格控制程序中内存的损耗。及时unset一些大而不用的变量或对象。
相关文档:
/*
用PHP的DOM控件来创建XML输出
设置输出内容的类型为xml
*/
header('Content-Type: text/xml;');
//创建新的xml文件
$dom = new DOMDocument('1.0', 'utf-8');
//建立<response>元素
$response = $dom->createElement('response');
$dom->appendChild($response);
//建立<books>元素并将其作 ......
原文出自: http://www.hly1980.cn/archives/118.html
需要分析日志时tail命令可是常需要用到的,可惜php内并没有提供类似的方法,所以自己实现了一个。
调用方式为tail($filename, $rows),每次默认读取1024字节作为缓冲,返回字符串数组,文件尾的行靠前(这里的行为和tail有所区别,如果需要以原序返回的请自行调用arr ......
文档是这么说的:
PHP 的引用允许用两个变量来指向同一个内容。意思是,当这样做时:
<?php
$a
=&
$b
;
?>
这意味着 $a
和 $b
指向了同一个变量。
注: $a
和 $b
在这里是完全相同的,这并不是 $a
指向了 $b
或者相反,而是 $a
和 $b
指向了同一个地方。
所以:
<?ph ......
昨天回家来,今天粗略看了一下《大道PHP》,书很细,C++的也是大概看了一下,总之,收获不大,也许第一天的缘故吧。
必须排除干扰,死心蹋地的学习了,高效的完成寒假的任务,PHP和C++基本功,VC++,MFC,可能的话,分析一下Dizcuss也是不错的,养成良好的编程风格和习惯。下半年, ......
<?php
/*
图片处理类:缩略,裁剪,圆角,倾斜
*/
class resizeimage
{
//图片类型
var $type;
//实际宽度
var $width;
//实际高度
var $height;
//改变后的宽度
var $resiz ......