--文章仅供个人学习参考,如有不恰当的地方,希望前辈们指教。--
1、配置本地化语言
Laravel 的本地化语言配置项位于config/app.php:
'locale' => 'zh', //当前语言
'fallback_locale' => 'en', //备用语言
2、创建翻译文件
翻译文件所在目录为resources/lang,在此创建 zh/auth.php文件
- <code class="language-php"></code> 
return [
'username'=>'用户名',
'password'=>'密码',
'rememberme'=>'记住密码',
'login'=>'登录',
'badpassword' => '用户名或密码错误.',
];
3、在代码中实现 使用 trans()方法 实现本地化显示
- <div class="form-group"> 
-            <label class="col-lg-4 control-label">{{trans('auth.username')}}</label> 
- <div class="col-lg-6"> 
-                 <input type="text" class="form-control" name="name" value="{{old('name')}}" autofocus/> 
-             </div> 
-        </div> 
创建app/Libraries/helpers.php文件,添加代码
- if(!function_exists('ts')){ 
- function ts($code,$lang='zh'){ 
- $lang= empty($lang)?'zh':$lang; 
- $code= preg_replace('/[^0-9a-zA-z.-_ ]/', '', $code); 
- $trans=trans($code,[],'',$lang); 
- if(empty($trans)||$trans==$code){ 
- $trans= ucwords(preg_replace('/([0-9a-zA-z-_ ]*[.])*/', '', $code)); 
- } 
- return $trans; 
- } 
- } 
在根目录下composer.json文件中修改代码
- "autoload": { 
- "classmap": [ 
- "database" 
- ], 
- "files": [ 
- "app/helpers.php", 
- "app/Libraries/helpers.php"  //新添加 
- ], 
- "psr-4": { 
- "App\\": "app/" 
- } 
- }, 
执行 composer dumpautoload
之后在项目、 模板中就可以使用 ts() 函数了
{{ts('auth.login')}}5、有时候需要动态的切换语言,通过URL传递参数,动态实现本地化
- function setLocalLang(Request $request) {  
- $lang=$request->lang; 
- App::setLocale($lang); 
- } 
参考教程:http://laravelacademy.org/tutorials/blog
GitHub:  https://github.com/CiaraLi/blogtest
