我有一个日志文件,每分钟都在不断更新,它也有一个自动增量值。我将第一次读取数据并将其与该文件中的最后一个自动增量值一起插入数据库。第二次,我能够从数据库中获取最后一个自动增量值,但无法检查文件中的该值并删除文件中小于该值的剩余行。
答案 0 :(得分:0)
我希望这段代码对您有用:
laravel.log:
[Fri Aug 12 20:37:04 2016][781] abc abcded1
[Fri Aug 12 20:37:04 2016][782] ali shahabi2
[Fri Aug 12 20:37:04 2016][783] mohammad3
[Fri Aug 12 20:37:04 2016][784] sara4
[Fri Aug 12 20:37:04 2016][785] reza5
代码:
<?php
$search_id = 782; # last id in table
$handle = @fopen('laravel.log', "r");
$save_flag=0;
if ($handle)
{
while (!feof($handle))
{
$buffer = fgets($handle);
if ($save_flag==0)
{
if(strpos($buffer, "[$search_id]") !== FALSE)
$save_flag=1;
// save this line to DB
}
else
{
// All messages in this section are new
// so save this line to DB
}
}
fclose($handle);
}