28

我正在将旧数据库 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 内存,英特尔 i5。

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

4

1 回答 1

20

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

您的脚本分配了 800MB 并试图再分配 500MB

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

于 2013-06-19T09:35:59.697 回答