当前位置:编程学习 > php >>

ThinkPHP使用公共语言包的问题及解决方法

ThinkPHP使用公共语言包的问题及解决方法
 我使用的是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')}

 
 

补充:Web开发 , php ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,