tp5之多语言整理

浏览:15583 发布日期:2016/05/10 分类:ThinkPHP5专区 关键字: tp5 lang
详细见笔记
一.配置'lang_switch_on' => true,
'lang_list' => ['zh-cn','en-us',],
二.语言定义()
1.文件定义,框架或模块目录\lang\en-us.phpreturn [
    '按钮1'=>'button1',//表示模板内使用{:lang('按钮1')}获得的字符在英文状态下显示为button1
    '按钮2'=>'button2',
    '其它语言变量'=>'Other language variables',
];
2.动态定义在控制器方法中
a.单个设置\think\Lang::set('按钮', 'button','en-us');//表示模板内使用{:lang('按钮')}获得的字符在英文状态下显示为buttonb.批量设置\think\Lang::set(['按钮1'=>'button1','按钮2'=>'button2'],'','en-us');三.在项目(貌似模块无效)公共文件(common.php)中选择自动侦测当前语言\think\Lang::detect();四.控制器方法编写(模块/Index.php)public function index() {
    $view = new \think\View();
    return $view->fetch();
}
public function lang() {
    switch ($_GET['lang']) {
        case 'cn':
            cookie('think_var', 'zh-cn');
        break;
        case 'en':
            cookie('think_var', 'en-us');
        break;
        //其它语言
    }
}
五.模板使用(index.html)<button type="button" lang='cn' class='btn'>{:lang('按钮1')}</button>
<button type="button" lang='en' class='btn'>{:lang('按钮2')}</button>
<button type="button" lang='其它语言' class='btn'>{:lang('按钮3')}</button>
{:lang('其它语言变量')}
<script src="http://libs.baidu.com/jquery/1.10.2/jquery.js"></script>
<script>
$('.btn').click(function(){
    var data={'lang':$(this).attr('lang')}
    $.get("{:url('Index/lang')}",data,function(){
    location.reload();
    })
})
</script>

附件 多语言笔记.zip ( 1.91 KB 下载:679 次 )

最佳答案
评论( 相关
后面还有条评论,点击查看>>