因此,此日志文件中的条目一行一行地保存。现在,我想阅读那些并在php文件中逐行显示它们。到目前为止,我能够读取文件,但无法逐行显示。我的PHP代码是:
$file='/var/log/siawa/dashboard/iot.log';
$lastpos = 0;
while (true) {
usleep(300000); //0.3 s
clearstatcache(false, $file);
$len = filesize($file);
if ($len < $lastpos) {
//file deleted or reset
$lastpos = $len;
}
elseif ($len > $lastpos) {
$f = fopen($file, "r");
if ($f === false)
die();
fseek($f, $lastpos);
while (!feof($f)) {
$buffer = fgets($f, 4096);
echo $buffer. "\n";
flush();
}
$lastpos = ftell($f);
fclose($f);
}
}
这些是我在日志文件中的条目:
2016-08-17 13:21:28 | INFO: Data on Date: 2016-08-17 12:26:15 already added
2016-08-17 13:48:46 | INFO: Data on Date: 2016-08-17 12:26:15 already added
答案 0 :(得分:2)
如果您在代码执行期间查看了HTML源代码,您会看到换行符非常好。
您需要做的是file_get_contents()
并使用<br>
将其输出到屏幕。
\n
不足以在另一条线下显示一条线;反正不在屏幕上。
添加<br>
和\n
以生成干净的HTML。
echo $buffer. "<br>" . "\n";