Language.php 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace App\Http\Middleware;
  3. use Closure;
  4. use Illuminate\Support\Facades\App;
  5. use Illuminate\Support\Facades\Config;
  6. use Illuminate\Support\Facades\Session;
  7. class Language
  8. {
  9. /**
  10. * Handle an incoming request.
  11. *
  12. * @param \Illuminate\Http\Request $request
  13. * @param \Closure $next
  14. * @return mixed
  15. */
  16. public function handle($request, Closure $next)
  17. {
  18. $lang = $request->header('lang');
  19. // App::setLocale($lang); //配置默认语言
  20. // return $next($request);
  21. if(isset($lang)){
  22. $request->session()->put('language',$lang);
  23. }
  24. file_put_contents('request.log',date('Y-m-d H:i:s').'---language-handle-'.$request->session()->has('language').PHP_EOL,FILE_APPEND);
  25. if ($request->session()->has('language') ) {
  26. App::setLocale($request->session()->get('language'));
  27. } else {
  28. App::setLocale(Config::get('app.locale'));
  29. }
  30. // dd(Session::get('language'));
  31. return $next($request);
  32. }
  33. }