使用
由于托管提供商设置了服务器的硬限制时间为180秒,并且单个脚本的最大内存利用限制为128mb,因此我无法更改这些限制。
我的想法是使用fgetcsv函数从.csv文件中获取信息,但是由于3分钟的限制,我预计需要对文件进行多次传递,所以我认为在处理文件时逐步减少文件大小会很好,这样我就不需要花费时间跳过之前已经处理过的行。
fgetcsv
,我是否可以进行破坏性读取,这样我读取并处理过的行将被丢弃,因此如果我在第一次通过时没有全部读取完整个文件,我可以回来继续从上次离开的地方开始,而不会出现脚本超时
的问题?
额外详细信息:
我每天从供应商那里得到一个200mb的.gz文件。当我解压缩文件时,它变成了一个1.5gb的.csv文件,其中包含近500,000行和20-25个字段。我需要将这些信息读入MySQL数据库,最好使用PHP,这样我就可以在我的Web托管提供商上安排CRON每天运行脚本。由于托管提供商设置了服务器的硬限制时间为180秒,并且单个脚本的最大内存利用限制为128mb,因此我无法更改这些限制。
我的想法是使用fgetcsv函数从.csv文件中获取信息,但是由于3分钟的限制,我预计需要对文件进行多次传递,所以我认为在处理文件时逐步减少文件大小会很好,这样我就不需要花费时间跳过之前已经处理过的行。
x
行? - Robert82