Laravel在filter.php中更改数据库数据

I want to change database data before and after App function in filter.php file. I try to do like in that tutorial: http://alex.leonard.ie/2013/08/02/laravel-tracking-last-activity-date-of-authorised-user/

App::before(function($request)
{
   $user = Auth::user();
   $user->online = 1;
   $user->save();
});

But i get error: ErrorException (E_UNKNOWN) Creating default object from empty value

Mybe someone can help?

App::before(function($request)
{
    if (Auth::check()){
      $user = Auth::user();
      $user->online = 1;
      $user->save();
    }
});

Note that this will only work if the user is logged in.

Try this.

App::before(function($request){ if(Auth::check()){ $user = Auth::user(); $user->online = 1; $user->save(); } });