Как реализовать статистику посещений в laravel?

Пользователь

от velma , в категории: PHP , 7 месяцев назад

Как реализовать статистику посещений в laravel?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от steve , 7 месяцев назад

@velma 

Для реализации статистики посещений в Laravel можно использовать middleware. Middleware - это промежуточное ПО, которое может обрабатывать входящие запросы и исходящие ответы, выполняя при этом какую-то логику.


Ниже представлен пример реализации middleware для отслеживания посещений страниц:

  1. Создайте middleware командой:
1
php artisan make:middleware TrackVisits


  1. В методе handle() опишите логику отслеживания посещений и сохранения их в базе данных, например:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
public function handle($request, Closure $next)
{
    $visit = new Visit;
    $visit->url = $request->url();
    $visit->ip = $request->ip();
    $visit->user_agent = $request->header('User-Agent');
    $visit->save();

    return $next($request);
}


  1. Зарегистрируйте middleware в файле app/Http/Kernel.php, добавив его в группу middleware:
1
2
3
4
5
6
7
8
protected $middlewareGroups = [
    'web' => [
        // ...
        AppHttpMiddlewareTrackVisits::class,
    ],

    // ...
];


Теперь при каждом запросе middleware будет сохранять информацию о посещении в базе данных. Для просмотра статистики можно написать соответствующий контроллер, который будет считать количество посещений по каждой странице.