PHP持续读取文件新行而不会每5秒退出一次

时间:2019-04-17 14:36:26

标签: php

脚本

<?php
$handle = @fopen("/tmp/inputfile.txt", "r");
if ($handle) {
    while (($buffer = fgets($handle, 4096)) !== false) {
        echo $buffer;
    }
    if (!feof($handle)) {
        echo "Error: unexpected fgets() fail\n";
    }
    fclose($handle);
}
?>

根据脚本,这将读取文件,直到结束,然后中断。有没有简便的方法或函数可以使while函数循环播放并在到达文件末尾后每5秒检查一次新行?

更新 在谷歌搜索并检查来自stackoverflow的任何相关帖子时,我找到了答案: How To watch a file write in PHP?

这就是我想要的。

1 个答案:

答案 0 :(得分:0)

可能更好的解决方案是每5秒使用Cron之类的东西(如果您使用的是Linux)来运行脚本。 Cron是一种实用工具,可用于持续在特定时间和/或日期安排例行的后台作业:Linux Crontab: 15 Awesome Cron Job Examples

请记住,您必须更改脚本以检查文件是否已更改:How to check if a file has changed?