可以在“内存不足”发生致命错误后运行某个功能吗?

时间:2012-01-23 20:48:36

标签: php

我正在尝试解析一个大型csv文件,并在将该数据保存到数据库之前对该数据执行一些操作。但是,我收到一个致命错误,表示已达到内存限制。有没有什么方法可以运行一个函数来保存csv文件的当前行号/指针,以便下次运行脚本时我可以从那一点恢复?

1 个答案:

答案 0 :(得分:3)

不,没有。您应该(例如)逐行处理文件

$f = fopen($csv, 'rb');
while ($row = fgetcsv($f)) {
  // Do something with line
  // for example push it into a db 
}
fclose($f);

这样你只需要记忆,你目前需要的东西。