使用ini_set(“memory_limit”,“ - 1”)并且仍然没有内存

时间:2013-06-19 09:01:38

标签: php apache memory limit easyphp

我正在将旧数据库php数组处理到新数据库。数据.php文件总共大约220 MB。

我已在脚本中插入这些行,以便它可以正常运行:

ini_set("memory_limit", "-1");
set_time_limit(0);

这是我包含产品的方式:

// The exports made by PHPMYADMIN, exported as PHP-Array
require_once 'export/tx_ttproductsv2_products.php';
require_once 'export/tx_ttproductsv2_keyword.php';
require_once 'export/tx_ttproductsv2_keywords_in_products.php';
require_once 'export/tx_ttproductsv2_typebook.php';
require_once 'export/tx_ttproductsv2_typegospel7.php';
require_once 'export/tx_ttproductsv2_typemedia.php';

当脚本试图要求它们时,我收到此错误:

  

PHP致命错误:内存不足(分配880541696)(试图分配469762048字节)......

我在x64 Win 7 SP1上运行了本地EasyPHP安装。我有6 GB的内存,Intel i5。

如何在没有内存错误的情况下让PHP运行整个脚本?

1 个答案:

答案 0 :(得分:15)

内存限制来自操作系统,而不是来自PHP本身。

您的脚本分配了800MB,并且正在尝试进一步分配500MB

尝试使用64位PHP在64位操作系统上运行脚本。