ここで長い間解決策を探していましたが、これまでのところ何も見つかりませんでした
私が必要としているのは、毎秒継続的に更新されるテキスト ファイルの最後の 10 行程度を読み取る方法です。
私はphpでいくつかの可能なコードを見つけましたが、毎秒ファイルを更新することはできません.
ある種の JavaScript を使用して、テキスト ファイルの最後の 10 行のみを取得するにはどうすればよいですか?
ここで長い間解決策を探していましたが、これまでのところ何も見つかりませんでした
私が必要としているのは、毎秒継続的に更新されるテキスト ファイルの最後の 10 行程度を読み取る方法です。
私はphpでいくつかの可能なコードを見つけましたが、毎秒ファイルを更新することはできません.
ある種の JavaScript を使用して、テキスト ファイルの最後の 10 行のみを取得するにはどうすればよいですか?
array_sliceを使用してみてください。これにより、配列の一部が返されます。この場合、配列の最後の15行を返すようにします。
$filearr = file("filename");
$lastlines = array_slice($filearr,-10);
-10(-10、-15は任意の値)を変更できます。
それがうまくいくことを願っています!
ここで正しい答えが見つからなかったので、私は新しい質問を始めました。
うーん...そうかもしれませんが、大きなファイルの場合:
$fileName = '[path_to_file]';
$file = new \SplFileObject($fileName);
$file->seek($file->getSize());
$lines = $file->key() - 1;
$file->setFlags(\SplFileObject::READ_CSV);
$counter = 0;
$records = 100;
$seek = $lines - $records;
$file->seek($seek);
$return = array();
while ($counter++ < $records) {
try {
$line = $file->fgets();
$return[] = $line;
} catch (\Exception $e) {
}
}