1、创建翻译文件
翻译文件所在目录为resources/lang,在此创建 zh/文件(在此创建的为中文)
return [ 'username'=>'用户名', 'password'=>'密码', 'rememberme'=>'记住密码', 'login'=>'登录', 'badpassword' => '用户名或密码错误.', ]
2、创建中间件
创建中间件 `php artisan make:middleware lang`
public function handle($request, Closure $next) { //判断是否存在session if ($request->session()->has('lang')) { $lang=Session::get('lang'); if(App::getLocale() != $lang) { App::setLocale($lang); } }else{ //判断系统语言 if(strrpos(strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE']), 'zh-cn') !== false) { if(App::getLocale() != 'cn'){ App::setLocale('cn'); } } else { if(App::getLocale() != 'en') { App::setLocale('en'); } } } return $next($request); }
3、在代码中实现 使用 trans()方法 实现本地化显示
<div class="form-group"> <label class="col-lg-4 control-label">{{trans('')}}</label> <div class="col-lg-6"> <input type="text" class="form-control" name="name" value="{{old('name')}}" autofocus/> </div> </div>
4、页面实时切换 中英文
通过ajax传入后台修改,并存入Session中
/** * 语言切换 * * 修改 locale 配置 */ public function lang($type='cn'){ if($type !== 'cn' && $type !=='en'){ $type='cn'; } config(['' => $type]); if(config('') == $type){ session(['lang' => $type]); $array=array('status'=>'1'); }else{ $array=array('status'=>'0'); } return json_encode($array); }