php的可能解决方案允许内存耗尽:将数据复制到临时数据库

时间:2014-03-10 05:48:37

标签: php mysql

正如你可以从标题中猜到的那样,我正在处理超过250 MB的数据,从而导致PHP内存耗尽错误。 ini_set('memory_limit',' - 1');是一个可能的解决方案,但我不知道为什么我觉得这是一种不安全的技术。是否有使用它的缺点?

我的解决方案是将所有相关数据复制到临时数据库,执行我需要的任何操作并删除它。 用户可能会在删除实际发生之前关闭选项卡,因此我会在每次操作之前检查现有的临时数据库,如果存在,我将删除它。

这是一种好方法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

在特殊情况下,您可以调整内存的大小:

$memory_berfore = ini_get('memory_limit'); // in your php.ini
// New Limit
ini_set('memory_limit','256M'); //128M, 256M, 512M, 1024M,... (X*2M)
...
your treatment 
...
// Older Limit
ini_set('memory_limit',$memory_berfore);