Maison >développement back-end >tutoriel php >请问thinkphp的多语言支持如何使用?手册说的不是很清楚。

请问thinkphp的多语言支持如何使用?手册说的不是很清楚。

WBOY
WBOYoriginal
2016-06-23 13:30:241067parcourir

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,谢谢

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn