SetLocale.php 526 B

12345678910111213141516171819202122232425262728293031
  1. <?php
  2. namespace App\Http\Middleware;
  3. use Closure;
  4. use Illuminate\Http\Request;
  5. use Session;
  6. class SetLocale {
  7. /**
  8. * 变更语言
  9. *
  10. * @param Request $request
  11. * @param Closure $next
  12. *
  13. * @return mixed
  14. */
  15. public function handle($request, Closure $next) {
  16. if(Session::has('locale')){
  17. app()->setLocale(Session::get('locale'));
  18. }
  19. if($request->query('locale')){
  20. Session::put('locale', $request->query('locale'));
  21. app()->setLocale($request->query('locale'));
  22. }
  23. return $next($request);
  24. }
  25. }