cmd窗口下 php -f 执行php文件 过一会就停止执行了

我在cmd 窗口下,用 php -f a.php 执行一个php文件。 这个文件是要读取一个大的日志文件,读取一行后就输出内容。由于日志文件有10多个G,执行的时间比较长。 开始执行的时候一切正常, 过了一会【3---5分钟左右】 cmd窗口就没反应了。敲回车也没反应。这是怎么回事呢?

文件中设置如下:
ini_set("memory_limit",'1024M');
set_time_limit(0);

阅读 4.1k
2 个回答

cli模式下运行php是不需要设置set_time_limit(0)的,程序会根据代码一直运行下去。

你这里应该是因为文件过大,导致程序异常而停止。

如果你的php版本大于5.5,建议使用新特性yield去读取文件,应该就不会出现程序异常退出的问题了。

具体怎么操作,自行百度一下。

要看你的代码了, 如果你是一次性读出来的话, 你的日志文件太大了, 你的内存溢出

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题