首页 > 代码库 > thinkPHP的多语言支持如何配置和部署

thinkPHP的多语言支持如何配置和部署

框架底层语言包位于:ThinkPHP/Lang/zh-cn.php 可以参考如何编写语言文件

第一步:项目目录下的配置文件中配置多语言支持的相关选项 以我的路径为例是Application\Common\Conf\config.php

配置内容如下:   ‘LANG_SWITCH_ON‘     =>     true,    //开启语言包功能        
          ‘LANG_AUTO_DETECT‘     =>     true, // 自动侦测语言
          ‘DEFAULT_LANG‘         =>     ‘zh-cn‘, // 默认语言        
          ‘LANG_LIST‘            =>    ‘en-us,zh-cn,zh-tw‘, //必须写可允许的语言列表
          ‘VAR_LANGUAGE‘     => ‘l‘, // 默认语言切换变量

第二步:要启用多语言功能,需要配置开启多语言行为,在应用(application)的配置目录(conf)下 (也就是在Application\Common\Conf\文件夹下),手动创建行为定义文件tags.php

内容如下:<?php
      return array(
            // 添加下面一行定义即可
            ‘app_begin‘ => array(‘Behavior\CheckLangBehavior‘),
      );

第三步:具体的语言包文件命名和位置如下     

     以我的项目为例 应用语言包在Application\Common\创建文件夹Lang\创建语言文件.php

    例如中文语言包是:Application/Common/Lang/zh-cn.php 应用公共语言包

第四步:从语言文件中获取相应的语言的值

    在控制器里可以用L(‘key‘)直接取出,例如:  

    语言包文件里内容如下:    <?php
                  return array(
                      ‘lan_define‘=>‘欢迎使用‘,
                      );

    控制器里获取如下:

     $value=http://www.mamicode.com/L(‘lan_define‘);
       $this->assign(‘value‘,$value);
            $this->display();

    在模板里:{$value}即可

    也可以直接在模板中获取:{$Think.lang.lan_define}

thinkPHP的多语言支持如何配置和部署