0

这是插入文件,一次放入 1 行。例如,我只想读取最后 10 行。

$file = SITE_ROOT."logs/log.txt";

        if ($handle = fopen($file, 'a+b')) {
            $content = Session::get('username') . " has logged out on - " . datetime_to_text("now") . "\r\n";
            fwrite($handle, $content);
            fclose($handle);
        } else {
            echo 'Culd not open file for writing.';
        }

这就是我阅读它们的方式,阅读它们。

$file = SITE_ROOT . "logs/log.txt";
                                $content = "";
                                if ($handle = fopen($file, 'r')) {
                                    while (!feof($handle)) {
                                        $content .= '<li><a href="#">' . fgets($handle) . '</a></li>';
                                        echo count($handle);
                                    }
                                    fclose($handle);
                                }

                                echo nl2br($content);

怎么读只有10?

完成,我找到了我正在寻找的答案。

Thx, i found useffull this one.



$file = SITE_ROOT . "logs/log.txt";
$data = array_slice(file($file), -10);
$data1 = file($file);
foreach ($data as $line) {
echo '<li><a href="#">'. nl2br($line) . '</a></li>';
}
4

1 回答 1

0
 while (!feof($handle)) {

该行实际上是“读取”该行,因此将其更改为此

$i=0;
$max=10;
while (!feof($handle) && ($i++ < $max)) {

设置一个计数器并计数,直到 $max 被击中。抱歉,我错过了最后 10 行。只看到代码块之间的 10 行

如何在 PHP 中只读取文本文件的最后 5 行?

提供最后 x 行的重要信息

于 2013-06-11T23:20:29.840 回答