thinkPHP的多语言支持如何配置和部署
Posted 编程是个无底洞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkPHP的多语言支持如何配置和部署相关的知识,希望对你有一定的参考价值。
框架底层语言包位于:Thinkphp/Lang/zh-cn.php 可以参考如何编写语言文件
第一步:项目目录下的配置文件中配置多语言支持的相关选项 以我的路径为例是Application\Common\Conf\config.php
配置内容如下: ‘LANG_SWITCH_ON‘ => true, //开启语言包功能
‘LANG_AUTO_DETECT‘ => true, // 自动侦测语言
‘DEFAULT_LANG‘ => ‘zh-cn‘, // 默认语言
‘LANG_LIST‘ => ‘en-us,zh-cn,zh-tw‘, //必须写可允许的语言列表
‘VAR_LANGUAGE‘ => ‘l‘, // 默认语言切换变量
第二步:要启用多语言功能,需要配置开启多语言行为,在应用(application)的配置目录(conf)下 (也就是在Application\Common\Conf\文件夹下),手动创建行为定义文件tags.php
内容如下:<?php
return array(
// 添加下面一行定义即可
‘app_begin‘ => array(‘Behavior\CheckLangBehavior‘),
);
第三步:具体的语言包文件命名和位置如下
以我的项目为例 应用语言包在Application\Common\创建文件夹Lang\创建语言文件.php
例如中文语言包是:Application/Common/Lang/zh-cn.php 应用公共语言包
第四步:从语言文件中获取相应的语言的值
在控制器里可以用L(‘key‘)直接取出,例如:
语言包文件里内容如下: <?php
return array(
‘lan_define‘=>‘欢迎使用‘,
);
控制器里获取如下:
$value=L(‘lan_define‘);
$this->assign(‘value‘,$value);
$this->display();
在模板里:{$value}即可
也可以直接在模板中获取:{$Think.lang.lan_define}
以上是关于thinkPHP的多语言支持如何配置和部署的主要内容,如果未能解决你的问题,请参考以下文章