【发布时间】:2017-03-12 19:29:59
【问题描述】:
我有一个包含动态文件的文件夹,每 2 秒就有一个新文件 我想每 2 秒检查一次是否有新文件 如果有新文件,将它们添加到数组中
每个文件大小约1m
我开始获取文件,然后开始逐个文件地读取它, 我需要在读取文件时更新数组,只要浏览器关闭就继续读取和更新
我使用那个代码
if ($files = glob('/files/'.$video_id.'*.ts')) {
$files = array_slice($files, -6, 6, true);
foreach ($files as &$file) {
if(!file_exists($file)) {
unset($files[$file]);
asort($files);
reset($files);
}
$fp = @fopen($file, "r");
echo fread($fp, filesize($file));
$newfiles = glob('/files/'.video_id.'*.ts');
$newfiles = array_slice($newfiles, -6, 6, true);
foreach ($newfiles as &$newfile) {
if(!in_array($newfile, $files, true)){
array_push($files, $newfile);
asort($files);
reset($files);
}
}
}
}
【问题讨论】:
-
问题是什么?
-
您想每两秒读取、解析和处理所有个文件,所有MB大小?
-
浏览器读取文件时我需要更新数组,只要浏览器关闭就更新
-
您之前发布的内容不相似/相同吗? stackoverflow.com/q/42717575/1415724
-
我需要每 2 秒运行一次此代码来更新数组 $newfiles = array_slice($newfiles, -6, 6, true); foreach ($newfiles as &$newfile) { if(!in_array($newfile, $files, true)){ array_push($files, $newfile);分类($文件);重置($文件); } }