ThinkPHP使用公共语言包的问题及解决方法
来源:互联网 发布:电子书转换格式软件 编辑:程序博客网 时间:2024/06/09 14:23
我用的是Sae平台扩展的ThinkPHP版本,想写一个前台语言配置的文件,但是遇到点问题,用L方法获取语言变量,总是取得大写的语言配置的键名。不用想,肯定是哪儿配置的不到位,于是百度、谷歌上搜搜,搜了大半天没有搜出来,最后在一个犄角旮旯的地方找到解决方法,今儿总结出来,希望对Tper有帮助。
首先,在项目根目录下的Lang新建一个zh-cn文件夹,然后在zh-cn文件夹下建立一个common.php。
例如:app/Lang/zh-cn/common.php(多文件像这样/en/common.php等),然后在common.php配置好对应语言的信息。
return array(
'SITE_TITLE' => '24青春',
'SITE_URL' => 'http://jahan.sinaapp.com/',
'SITE_KEYWORDS' => 'php thinkphp',
.................
);
接下来,在app/Conf/config.inc.php里配置好与语言相关的设置。
return array(
'LANG_AUTO_DETECT' => FALSE, //关闭语言的自动检测,如果你是多语言可以开启
'LANG_SWITCH_ON' => TRUE, //开启语言包功能,这个必须开启
'DEFAULT_LANG' => 'zh-cn', //zh-cn文件夹名字 /lang/zh-cn/common.php
);
弄到这里,我原以为就可以了,其实不然,还需要在app/Conf下建立tags.php文件(app/Conf/tags.php),这个真心的不知道,也许没仔细看文档。
把如下内容加入文件里。
return array(
'app_begin' => array(
'CheckLang',
),
);
app运行之前,会加载这个配置文件,去调用CheckLang方法。我运行项目发现,出了个错,错误提示没有 ”Class 'CheckLangBehavior' not found “。
由于我的Thinkphp版本是Sae扩展版,没有找到这个类,所以才报错,你们或许不会遇到,如果也有这种情况,可以下载一个TP完整版,找到这个类,把这个类CheckLangBehavior放到app/Lib/Behavior/下,再次运行就ok啦!好了,你已经配置好了,如果想在Action里调用,可以用L方法提取语言配置,L('SITE_TITLE'); 如果你想在模版文件里使用,你可以这样{:L('SITE_TITLE')}是不是很方便,改动一处,相同的地方都改啦,希望对大家有所帮助。
0 0
- ThinkPHP使用公共语言包的问题及解决方法
- 在使用thinkphp 遇到的问题 及解决方法
- 使用CleanMyMac却误删了语言包的解决方法
- ThinkPHP多语言包功能使用
- thinkphp 语言包
- thinkphp 获取lang 语言包的参数配置
- 安装domino9_linux64的语言包遇到的问题及解决办法
- thinkphp框架之关于网站语言包的设置和使用(多语言支持)
- 将 Windows 的 thinkPHP 项目上传至 Linux 服务器遇到的问题及解决方法
- Eclipse的版本和语言包的使用问题
- 【初级】Eclipse的版本和语言包的使用问题
- VC2005使用的一些问题及解决方法
- VC2005使用的一些问题及解决方法
- 使用AsyncHttpClient碰到的问题及解决方法
- 使用AsyncHttpClient碰到的问题及解决方法
- 使用AsyncHttpClient碰到的问题及解决方法
- Laravel 使用遇到的问题及解决方法
- Laravel 使用遇到的问题及解决方法
- 流式大数据处理的三种框架:Storm,Spark和Samza
- C++类URL编码和解码使用技巧
- 解决android sdk manager 无法更新问题【亲测】
- C++继承(5) - 对象切割
- hdoj1150_Machine Schedule(二分图最大匹配)
- ThinkPHP使用公共语言包的问题及解决方法
- swiperefreshlayout
- 相似度算法
- 人脸识别相关技术之Gabor小波变换
- Leetcode Pascal's Triangle
- uiviewcontroller 隐藏返回按钮
- Java 常用类
- block的使用总结
- <!DOCTYPE> 标签的深度剖析以及使用选择