加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

YII2 实现多语言配置的方法分享

发布时间:2020-05-23 03:58:12 所属栏目:PHP 来源:互联网
导读:这篇文章主要介绍了YII2实现多语言配置的方法,文中YII2的版本是2.0.7,可能会与其他教程有不同,有需要的朋友可以参考借鉴,下面来一起看看吧。

前言:

由于我的YII2版本是2.0.7,设置多语言时和其他教程有不同的地方,所以想着整理下,方便自己以后需要的时候和有需要的朋友参考学习。下面来一起学习学习吧。

方法如下:

1. 在一个controller里面写一个调用i18n的语句,比如actionIndex

现在进入这个页面,页面输出whatisthis

2. 手动创建一个文件夹messages来存放多语言相关文件,如果是advanced版本则在frontend下面创建这个文件夹

3. 创建i18n配置文件

会自动生成一个config.php文件

然后打开frontend/messages/config.php,language行设置为

['en','zh-CN'],

4. 创建message文件,执行

这样在frontend/messages里面会生成en和zh-CN文件夹

5. 打开frontend/messages/zh-CH/yii.php

添加一行

'这是啥玩意',

6. 在/yii2/frontend/config/main.php里设置

components中加入

[ 'translations' => [ 'app*' => [ 'class' => 'yiii18nPhpMessageSource',//'basePath' => '@app/messages',//'sourceLanguage' => 'en-US','fileMap' => [ 'app' => 'yii.php','app/error' => 'error.php',],

注意,如果想要更改validate等yii本身的翻译

需增加下面设置到 'translations' => []中:

[ 'class' => 'yiii18nPhpMessageSource','sourceLanguage' => 'en-US','basePath' => '@app/messages' ],

components同等级后加入

'zh-CN',

7. 再刷新页面,应该会显示"这是啥玩意"了.

8. 当你需要新增其他语言时候,执行第3,4步会重新生成文件,之前的翻译(whatisthis)会保留,但我试了之后发现变成了

'@@这是啥玩意@@',

很奇怪的两边多出@@.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读