多语言切换使用

第一步:在自己项目的配置文件中config开启多语言支持

‘LANG_SWITCH_ON‘ =>true, //是否开启多语言支持
‘VAR_LANGUAGE‘ =>‘hl‘, //语言变量
‘LANG_AUTO_DETECT‘=>true,//开启语言自动侦测
‘LANG_LIST‘=>‘zh-cn,zh-hk,en-us‘,//所支持的语言列表

以上配置参考CheckLangBehavior.class.php文件

第二步:开启checklang行为,在项目配置文件Conf目录下新建tags.php文件,在此文件做以下配置

return ‘tags‘=>array(

‘app_begin‘ => array(
‘Behavior\ReadHtmlCacheBehavior‘, // 读取静态缓存

‘Behavior\CheckLangBehavior‘,
),

)

以上配置参考ThinkPHP/Mode/common.php文件

第三步:创建与语言列表相对应的语言包文件

在项目/Common/Lang这个目录下新建zh-cn.php,zh-hk.php,en-us.php文件,在这三个文件里设置语言变量信息

return array(

‘username‘=>‘username‘,

‘password‘=>‘password‘,

)

return array(

‘username‘=>‘用戶名‘,

‘password‘=>‘密碼‘,

)

在控制器里可用快捷函數L()获得所有语言变量信息,通过assign分配给模板,$this->assign(‘lang‘,L())在模板里可以这样获取语言变量{$lang.USERNAME},在模板里的语言变量名必须大写。

通过get获得语言变量的值,就可以自动切换语言了,比如通过在浏览器里这样访问www.baidu.com/hl/zh-cn,自动加载简体语言包

语言包的创建有4种,分别是整个框架语言包、项目公共语言包、模块语言包、控制器语言包,他们的区别是作用域不同

时间: 2024-11-09 10:11:52

多语言切换使用的相关文章

Android 应用内多语言切换

p.p1 { margin: 0.0px 0.0px 12.0px 0.0px; line-height: 18.0px; font: 12.0px ".PingFang SC"; color: #000000 } p.p3 { margin: 0.0px 0.0px 13.9px 0.0px; line-height: 18.0px; font: 16.8px "PT Sans"; color: #000000 } p.p4 { margin: 0.0px 0.0

Android应用语言切换功能

因为公司的产品大部分是销售到国外的,所以领导要求app有语言切换功能.我在网上搜了些相关知识并实现了功能,在这里做个中英文切换的demo记录下来. 先看看demo的效果: 效果就是这样子.当然也可以做成其他语言的切换,具体根据需求而定. 原理其实很简单,就是多个strings.xml进行切换然后在刷新Activity. 首先,在AndroidManifest.xml文件中的每个需要切换语言的Activity中加入android:configChanges="locale". 然后在re

android 语言切换过程分析 (zhuan)

最近在看一个bug,系统切换语言后,本来退到后台的音乐,会在通知栏上显示通知.为了解决这个bug,我学习了下android的语言切换流程,也参考了大量其他人的资料.(主要参考了http://blog.csdn.net/wqhjfree/article/details/8244520)在这里我将自己的探索记录下来,作为自己的学习记录,也希望能对有同样需要的人有个帮助.刚学android不久,如果中间有什么问题不对的请多多谅解,并指出错误,多交流,共同进步下. 1.从setting入手,我们可以知道

【Android 多语言切换简单实例分享】

一.Android多语言切换 Android应用的开发不可能只针对某一个国家或者区域使用,各国间语言文化各不相同,因此一个优秀的APP必须支持多种语言,为了实现这个特性,Android给出了一个解决方式,在res目录下通过values+语言编码来实现多国语言的支持(中间采用连字符号-连接),例如:values-es代表英文,如果你决定了你的应用要支持多国语言,那么你就必须新建多种values-XXX的多语言支持文件,下面通过一个例子来看看基本的使用方式,先看下效果图: 1.工程结构 注:主要看下

Android应用内语言切换实现

自定义控件系列结束了,打个回马枪,补上前段时间埋下的一个坑---"应用内语言切换".APP语言改变是一个Configuration,但是这个Configuration和android手机屏幕旋转有点不大一样.屏幕旋转的时候,会destroy当前页面,并进行重新绘制.而切换语言后不会重新绘制页面,所以这种情况的出现造成了网上的一知半解小伙伴们哀声一片,不是在咒骂api的坑爹,就是在卖力的另辟蹊径想尽办法解决问题.思路都是很好的,目的也是坚决的,可是方向是错误的,把哥哥我也给带进了坑了,爬

android实现多语言切换

在安卓开发中,常会遇到需要切换不同语言的情况.语言不同意味着需要进行不同语种字符的动态切换.不同布局的动态切换. 安卓实现这一功能非常的简单: 首先在res中创建其它语种对应的value.layout等文件夹,比如添加英文版和越南版,命名如value-en-US.value-vi.layout-en-US.layout-vi. 命名规则在网上可以查到,value-en-US中,en表示英文,US表示美国.国家可不写.越南版可全写为layout-vi-VN. 如此,便有了几套同名,同id,但内容属

语言切换

ECSHOP商城模板实现英文繁体简体多语言切换 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2013-11-17 各位ECSHOP网店系统用户大家好,欢迎来到ECSHOP教程网图文教程,今天为大家详细解说一下ECSHOP模板实现英文繁体简体多语言切换 ECSHOP教程网ECSHOP视频教程也再不断的完善与跟进,期待大家的关注!希望在ECSHOP的道路上,ecshop教程网与您一路同行! 1).首先打开 includds/init.php  文件,找到 requi

Android应用实现多语言切换

关于Android应用实现多语言切换,有好几种办法,网上也搜到很多资料,这里有个简单有效的办法. 步骤如下: 在资源文件中新建一个文件夹values-en,在里面新建一个strings.xml,把默认values文件夹中的strings.xml中的内容拷贝一份到values-en中的strings.xml,再把该文件夹中的中文内容转换为英文,例如<string name="set">设置</string>转换为<string name="set&

Yii2.0 语言切换的简单设置

多余的话不说,直接看代码: 1) 在 common/config/main.php 写入配置代码 1 // 配置翻译信息 2 'i18n' => [ 3 'translations' => [ 4 'app' => [ 5 'class' => 'yii\i18n\PhpMessageSource', 6 'basePath' => '@common/messages', 7 // 'sourceLanguage' => 'en', 8 'fileMap' =>

uwp - 使用资源字典实现多国语言切换(重启应用生效)

找了好半天资料,没发现什么可以实时切换语言的好办法,没错,是没什么好办法,一些囊肿的办法倒是有,不过我试过后觉得不怎么好用,诸如:用类定义--太麻烦不易修改,绑定麻烦:试过通过自定义主题来实现,比用类来实现好太多了,切换ElementTheme属性就可以实时变更语言,不过怪怪的,而且也是比较麻烦所以不用,那么最后只能用最后这种资源字典来实现,但是却不能实时生效,╮(╯▽╰)╭悲哀,想想微软自家的APP什么msn新闻,自身os也不是得重启生效,索性不去纠结实时不实时的问题. 还是想抱怨一句,为什么