Maison >développement back-end >tutoriel php >请问thinkphp的多语言支持如何使用?手册说的不是很清楚。
thinkphp3.2.3
网址:http://www.kancloud.cn/manual/thinkphp/1874
但我在控制器里直接输出L()只能适别ThinkPHP核心目录->Lang里的语言文件,我想在模块里添加Lang语言文件,但用L()不能识别,只会直接打印参数名,请问如何解决这个问题?
你给的连接中说的很清楚了
你具体是怎么做的?
我用的是3.1的,不过应该差不了多少
1.应用配置目录中config.php中添加相关配置
'LANG_SWITCH_ON' => true, //开启语言包功能
'LANG_AUTO_DETECT' => false, // 自动侦测语言
'DEFAULT_LANG' => 'ja', // 默认语言
'LANG_LIST' => 'zh-cn,en-us,ja', //必须写可允许的语言列表
'VAR_LANGUAGE' => 'lang', // 默认语言切换变量
2.应用配置目录新建tags.php文件并添加内容:
return array(
// 添加下面一行定义即可
//'app_begin' => array('Behavior\CheckLang'),
// 如果是3.2.1版本 需要改成
'app_begin' => array('Behavior\CheckLangBehavior'),
);
3.应用common目录新建Lang文件夹并新增定义的语言包文件
设置变量,例如:
return array(
'operation_fail'=>'操作失败',
'operation_success'=>'操作成功',
);
读取变量:
1.控制器中读取:L('operation_fail')
2.模型(model)中读取:{%operation_fail}
3.模板中读取:{:L('operation_fail')}
哦,我明白了,原来是我的'app_begin' => array('Behavior\CheckLangBehavior'),这个写在config.php了,应该写在tags.php,谢谢