我正在使用monolog库来记录到文本文件。按日期排序的日志:
[2016-10-19 03:39:05] name.WARNING: Foo [] []
[2016-10-19 03:40:05] name.ERROR: Bar [] []
[2016-10-19 03:41:32] name.WARNING: Foo [] []
[2016-10-19 03:42:18] name.ERROR: Bar [] []
[2016-10-19 03:43:42] name.WARNING: Foo [] []我想颠倒这个顺序,这样最新的将是最顶端的。
有没有一种简单的方法可以使用monolog (也许是一些隐藏的设置)来实现这一点?
发布于 2019-01-16 02:09:25
这段代码将读取您的日志文件,并反向显示最后几行$qtd_rows
$file = 'error.log';
$handle = fopen($file, "r");
$linecounter = $qtd_rows;
$pos = -2;
$beginning = false;
$this->lines = array();
while ($linecounter > 0) {
$t = " ";
while ($t != "\n") {
if(fseek($handle, $pos, SEEK_END) == -1) {
$beginning = true; break;
}`enter code here`
$t = fgetc($handle);
$pos --;
}
if($beginning) rewind($handle);
$line = fgets($handle);
$lines[$lines-(--$linecounter)-1] = $line;
if($beginning) break;
}
fclose ($handle);
foreach($lines as $key => $value) {
echo $value;
};https://stackoverflow.com/questions/40137492
复制相似问题