thinkphp 3.23语言包加载

Posted allen817

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp 3.23语言包加载相关的知识,希望对你有一定的参考价值。

模块home:

1.config 里添加 配置

//‘配置项‘=>‘配置值‘
    ‘LANG_SWITCH_ON‘   => true,      // 开启语言包功能
    ‘LANG_AUTO_DETECT‘ => true,    // 自动侦测语言 开启多语言功能后有效
    ‘DEFAULT_LANG‘ =>‘zh-tw‘,//这个是繁体
    ‘LANG_LIST‘        => ‘zh-cn,en-us,pt-br,zh-tw‘,         // 允许切换的语言列表 用逗号分隔
    ‘VAR_LANGUAGE‘     => ‘l‘,          // 默认语言切换变量,注意到上面发的链接了么,l=zh-cn,就是在这里定义l这个变量

说明是这个l 是地址传的参数

2.在 config 下增加 tags.php文件 ,添加配置:

return array(
    ‘app_begin‘        => array(‘Behavior\CheckLangBehavior‘),
    //注意这里,官方的文档解释感觉有误(大家自行分辨),TP3.2.3用Behavior\CheckLang会出错,提示:Class ‘Behavior\CheckLang‘ not found

);

3.人个建议把核心包Tinkphp 下面的 lang 文件夹copy放到home模块下,在对应的语言包里添加键值对

4.前台模板输出

{$Think.lang._RECORD_HAS_UPDATE_}

 

5,因为本人在地址栏带参再返回来源页不知怎么弄就是用ajax刷新的

$langSet = $_GET[‘l‘];
        if($langSet){
            cookie(‘think_language‘,$langSet,3600);
            echo  1;
        }else{
            if(cookie(‘think_language‘)){
                cookie(‘think_language‘,cookie(‘think_language‘),3600);
                echo 1;
            }
        }

, 主要是为刷新cookie 的think_language值

js 刷新本页:window.location.reload();

 

以上是关于thinkphp 3.23语言包加载的主要内容,如果未能解决你的问题,请参考以下文章

thinkphp 外部js语言包

thinkphp语言包

项目复盘:通过动态脚本,实现按需加载语言包

R语言-查看加载包卸除加载包及安装包与卸载包

ECshop语言包lang的加载原理

ThinkPHP3.2中英文切换!