проверьте значение в файле и удалите строки меньше этого значения в этом файле и оставьте оставшиеся строки.в Ларавеле - PullRequest
0 голосов
/ 05 июня 2018

У меня есть файл журнала, который обновляется каждую минуту, который также имеет значение автоинкремента.Впервые я прочитаю данные и вставлю в базу данных вместе с последним значением автоинкремента в этом файле.Во второй раз я смог получить последнее значение автоинкремента из базы данных, но не смог проверить это значение в файле и удалить оставшиеся строки меньше этого значения в файле.

1 Ответ

0 голосов
/ 05 июня 2018

Надеюсь, этот код пригодится для вас:

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);
}
...