PHP致命错误:允许的内存大小为2388608字节

PHP致命错误:允许的内存大小为2388608字节,php,database,Php,Database,当我试着运行我的PHP时,我得到了这个。 当我注释掉database execute()方法时,它不会出错。但这对我帮助不大。请帮助:-)您是否在查询中使用“选择*”?如果是,并且您正在获取大量行,PHP没有足够的内存分配给所有字段 您可以通过以下方式增加PHP的内存限制: ini_set('memory_limit', '32M'); 没有更多的细节,很难确定你的具体问题是什么;但是,当尝试读入包含许多记录的查询结果时,这是常见的 PHP有一个内存大小限制(在PHP.ini中设置),它设置了

当我试着运行我的PHP时,我得到了这个。 当我注释掉database execute()方法时,它不会出错。但这对我帮助不大。请帮助:-)

您是否在查询中使用“选择*”?如果是,并且您正在获取大量行,PHP没有足够的内存分配给所有字段

您可以通过以下方式增加PHP的内存限制:

ini_set('memory_limit', '32M');

没有更多的细节,很难确定你的具体问题是什么;但是,当尝试读入包含许多记录的查询结果时,这是常见的

PHP有一个内存大小限制(在PHP.ini中设置),它设置了PHP可以用来处理脚本的最大内存量。如果您尝试读取大量记录,并将其存储在数组中,PHP很可能会耗尽内存。您可以做的一件事是增加内存大小限制,例如从2M增加到32M

正如其他人所提到的,如果您有权在主机上这样做,您也可以使用
ini\u set('memory\u limit','32M')
或类似工具


但是,不管是否允许编辑php.ini文件,都应该寻找一种更有效的方法来检索和存储数据。考虑简化查询,限制查询结果,或者只使用诸如<代码>($ROC= $dB>FETCHYLROW)< /COD>一次处理一个结果行。

< P>一般您应该优化查询/执行(),例如不要使用SELE**或ORM也会造成内存问题。 解决方法将内存大小设置得更高:

ini_设置(“内存限制”、“5M”)

5M将限制设置为5兆字节。 如果这不起作用,请尝试在php.ini中设置该值


干杯。

如果您在mysqlnd中使用php5.3,请注意“MySQL”的内存使用现在算作PHP的内存使用。以前,libmysql使用的内存不会计入
memory\u get\u usage()


我们更改了许多繁重的查询以供使用,从而降低了内存使用。

您要传递给
execute()
的查询是什么?一些代码将使调试问题变得更容易。