PHP包括大文件-内存问题



我在包含非常大的文件时遇到问题,因此使用了ini_set('memory_limit', '-1');但仍然不能包含超过1GB的文件。我该怎么办?

您将不得不重新考虑您的体系结构;PHP的include函数并不是为处理如此大的文件而设计的;它被设计用于包含和计算PHP代码文件。在不知道文件实际保存了什么数据的情况下,很难多说;但似乎不太可能这个文件实际上只保存PHP代码;听起来你好像要读取大量类似php格式的编码信息。

你应该尝试以块或行来读取文件,而不是使用include。

尝试加载这样一个文件的唯一可能原因可能是将其导入数据库。每个数据库都有一个用于此目的的文件加载程序。Mysql有LOAD INFILE专门处理这个问题。我建议首先在数据库中获取数据,然后使用PHP或MySQL将数据转换为您的需要。使用PHP解析1GB的文件可能不是对PHP或资源的最佳使用。

最新更新