zoukankan      html  css  js  c++  java
  • Laravel 本地化定义

    1、配置本地化语言
    Laravel 的本地化语言配置项位于config/app.php:

    [php] view plain copy
    1.   

    'locale' => 'zh',//当前语言

    'fallback_locale' => 'en',//备用语言


    2、创建翻译文件

    翻译文件所在目录为resources/lang,在此创建 zh/auth.php文件

    [php] view plain copy
    1.   

    return [ 

        'username'=>'用户名',

        'password'=>'密码',

        'rememberme'=>'记住密码',

        'login'=>'登录', 

        'badpassword' => '用户名或密码错误.', 

    ];


    3、在代码中实现 使用 trans()方法  实现本地化显示

    [php] view plain copy
    1. <div class="form-group">  
    2.            <label class="col-lg-4 control-label">{{trans('auth.username')}}</label>  
    3.             <div class="col-lg-6">  
    4.                 <input type="text" class="form-control" name="name" value="{{old('name')}}" autofocus/>  
    5.             </div>  
    6.        </div>  


    4、如没有定义翻译你会返回整个字符串,可以封装自己封装的trans函数

    创建app/Libraries/helpers.php文件,添加代码

    [php] view plain copy
    1. if(!function_exists('ts')){  
    2.   function ts($code,$lang='zh'){  
    3.     $langempty($lang)?'zh':$lang;  
    4.     $code= preg_replace('/[^0-9a-zA-z.-_ ]/'''$code);  
    5.     $trans=trans($code,[],'',$lang);  
    6.     if(empty($trans)||$trans==$code){  
    7.         $trans= ucwords(preg_replace('/([0-9a-zA-z-_ ]*[.])*/'''$code));  
    8.     }  
    9.     return $trans;  
    10.   }  
    11.  }  



    在根目录下composer.json文件中修改代码

    [php] view plain copy
    1. "autoload": {  
    2.   "classmap": [  
    3.     "database"  
    4.   ],  
    5.   "files": [  
    6.     "app/helpers.php",  
    7.     "app/Libraries/helpers.php"  //新添加  
    8.   ],  
    9.   "psr-4": {  
    10.     "App\": "app/"  
    11.   }  
    12.   },  


    执行 composer dumpautoload

    之后在项目、 模板中就可以使用 ts() 函数了

    [php] view plain copy
    1. {{ts('auth.login')}}  


    5、有时候需要动态的切换语言,通过URL传递参数,动态实现本地化

    [php] view plain copy
    1. function setLocalLang(Request $request) {   
    2.     $lang=$request->lang;  
    3.     App::setLocale($lang);  
    4. }  

    1.  

    'locale' => 'zh',//当前语言

    'fallback_locale' => 'en',//备用语言


    2、创建翻译文件

    翻译文件所在目录为resources/lang,在此创建 zh/auth.php文件

    [php] view plain copy
    1.  

    return [

        'username'=>'用户名',

        'password'=>'密码',

        'rememberme'=>'记住密码',

        'login'=>'登录',

        'badpassword' => '用户名或密码错误.',

    ];


    3、在代码中实现 使用 trans()方法  实现本地化显示

    [php] view plain copy
    1. <div class="form-group"
    2.            <label class="col-lg-4 control-label">{{trans('auth.username')}}</label> 
    3.             <div class="col-lg-6"
    4.                 <input type="text" class="form-control" name="name" value="{{old('name')}}" autofocus/> 
    5.             </div> 
    6.        </div> 


    4、如没有定义翻译你会返回整个字符串,可以封装自己封装的trans函数

    创建app/Libraries/helpers.php文件,添加代码

    [php] view plain copy
    1. if(!function_exists('ts')){ 
    2.   function ts($code,$lang='zh'){ 
    3.     $lang= empty($lang)?'zh':$lang
    4.     $code= preg_replace('/[^0-9a-zA-z.-_ ]/', '', $code); 
    5.     $trans=trans($code,[],'',$lang); 
    6.     if(empty($trans)||$trans==$code){ 
    7.         $trans= ucwords(preg_replace('/([0-9a-zA-z-_ ]*[.])*/', '', $code)); 
    8.     } 
    9.     return $trans
    10.   } 



    在根目录下composer.json文件中修改代码

    [php] view plain copy
    1. "autoload": { 
    2.   "classmap": [ 
    3.     "database" 
    4.   ], 
    5.   "files": [ 
    6.     "app/helpers.php"
    7.     "app/Libraries/helpers.php"  //新添加 
    8.   ], 
    9.   "psr-4": { 
    10.     "App\": "app/" 
    11.   } 
    12.   }, 


    执行 composer dumpautoload

    之后在项目、 模板中就可以使用 ts() 函数了

    [php] view plain copy
    1. {{ts('auth.login')}} 


    5、有时候需要动态的切换语言,通过URL传递参数,动态实现本地化

    [php] view plain copy
    1. function setLocalLang(Request $request) {  
    2.     $lang=$request->lang; 
    3.     App::setLocale($lang); 

  • 相关阅读:
    tailf、tail -f、tail -F三者区别(转)
    Jackson是线程安全的吗
    SecureCRT同时向多个终端发送命令
    SecureCRT设置和Xshell一样的快速命令集(使用快捷键输入命令和密码)
    SecureCRT配色方案
    Java中判断字符串是否为数字的方法
    MySQL错误:Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences -> SQL easonjim
    SecureCRT导出服务器列表或配置文件
    java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.SpecialProvider.<init>()
    Badge
  • 原文地址:https://www.cnblogs.com/mouseleo/p/8570768.html
Copyright © 2011-2022 走看看