0

ここで長い間解決策を探していましたが、これまでのところ何も見つかりませんでした

私が必要としているのは、毎秒継続的に更新されるテキスト ファイルの最後の 10 行程度を読み取る方法です。

私はphpでいくつかの可能なコードを見つけましたが、毎秒ファイルを更新することはできません.

ある種の JavaScript を使用して、テキスト ファイルの最後の 10 行のみを取得するにはどうすればよいですか?

4

3 に答える 3

0

array_sliceを使用してみてください。これにより、配列の一部が返されます。この場合、配列の最後の15行を返すようにします。

$filearr = file("filename");
$lastlines = array_slice($filearr,-10);

-10(-10、-15は任意の値)を変更できます。

それがうまくいくことを願っています!

于 2013-03-16T10:09:58.267 に答える
0

ここで正しい答えが見つからなかったので、私は新しい質問を始めました。

大きなテキストファイルの最後の50行のみを読み取る

于 2013-03-17T20:34:43.067 に答える
0

うーん...そうかもしれませんが、大きなファイルの場合:

$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) {
    }
}
于 2013-03-16T10:34:36.177 に答える