1.开启多语言行为
在Application/Common/conf目录下,新建tags.php文件,添加:
return array=(‘app_begin’ => array(‘Behavior\CheckLangBehavior’),);
2.配置参数
在Application/Common/conf目录下,打开config.php,添加:
'LANG_SWITCH_ON' => true, // 开启语言包功能
'LANG_AUTO_DETECT' => true, // 自动侦测语言 开启多语言功能后有效
'LANG_LIST' => 'zh-cn,zh-tw,en-us', // 允许切换的语言列表 用逗号分隔
'VAR_LANGUAGE' => 'l', // 默认语言切换变量
'DEFAULT_LANG' => 'zh-cn', // 默认语言
3.新建语言包目录,写入语言包文件
在Application/Common目录下,新建Lang目录,将zh-cn.php,zh-tw.php,en-us.php语言包文件放入。
4.配置语言变量
①可以在各个语言包文件里面自定义常量,通过键值对的方式,例如:
在enu-s.php文件里面,写入 ‘USER_NAME’=>’hello’,
②在控制器里通过L()方法设置,例如:
L(‘CITY’,’Shanghai’);
5.输出语言变量
1.在控制里面,可以通过L()方法输出,例如:
L(); //输出语言包文件里配置的所有信息
L(‘CITY’); //输出Shanghai
2.在模板里面,可以通过{Think.lang.###}来输出,例如:
{Tink.lang.CITY} //输出Shanghai
附:读取语言包的顺序
ThinkPHP/Lang/zh-cn.php 框架底层语言包
Application/Common/Lang/zh-cn.php 应用公共语言包
Application/Home/Lang/zh-cn.php Home模块语言包
Application/Home/Lang/zh-cn/user.php Home模块的User控制器语言包