ThinkPHP使用公共语言包的问题及解决方法_PHP教程
我使用的是ThinkPHP3.1.3。我的项目截图
说明:因为我的项目进行分组,现在以Admin分组新建语言包为例。
首先,在项目根目录下的app下的Lang新建一个zh-cn文件夹,然后在zh-cn文件夹下建立一个Admin分组,在Admin新建user.php。语言包定义可以参考下面
在user.php写入语言信息,如下
return array(
'SITE_TITLE' => '24青春',
'SITE_URL' => 'http://jahan.sinaapp.com/',
'SITE_KEYWORDS' => 'php thinkphp',
.................
);
接下来,在config.php(就是自己项目的配置信息文件)里进行配置
return array(
'LANG_AUTO_DETECT' => FALSE, //关闭语言的自动检测,如果你是多语言可以开启
'LANG_SWITCH_ON' => TRUE, //开启语言包功能,这个必须开启
'DEFAULT_LANG' => 'zh-cn', //zh-cn文件夹名字 /lang/zh-cn/common.php
);
还要在工程中tags.php(一般位于Conf目录下,如果没有,可以自己新建)添加代码,如下
return array(
'app_begin' => array(
'CheckLang',
),
);
app运行之前,会加载这个配置文件,去调用CheckLang方法。我运行项目发现,出了个错,错误提示没有 ”Class 'CheckLangBehavior' not found “。
因为没有找到'CheckLangBehavior'类,我们可以下载一个TP完整版,找到CheckLangBehavior.class.php,截图如下
把这个类放到工程中Extend目录,也可以放到Lib目录下。这样就可以使用自定义的语言包。
语言包的调用:
如果是在Action里调用,格式是 L('site_name')
如果是在模版文件里调用,格式为 {:L('site_name')}
推荐阅读
-
php使用iconv中文截断问题的解决方法_PHP教程
-
ThinkPHP框架实现session跨域问题的解决方法_PHP教程
-
ThinkPHP使用公共语言包的问题及解决方法
-
linux下使用ThinkPHP需要注意大小写导致的问题_PHP教程
-
ThinkPHP的cookie和session冲突造成Cookie不能使用的解决方法_PHP教程
-
PHP使用Memcache时模拟命名空间及缓存失效问题的解决,memcache命名空间_PHP教程
-
php以fastCGI的方式运行在iis下,遇到的文件系统权限问题及解决方法,_PHP教程
-
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法,thinkphp斜线_PHP教程
-
ThinkPHP使用公共语言包的问题及解决方法
-
基于HBase Thrift接口的一些使用问题及相关注意事项的详解_PHP教程