未加星标

Yii2配置多语言

字体大小 | |
[开发(php) 所属分类 开发(php) | 发布者 店小二04 | 时间 2017 | 作者 红领巾 ] 0人收藏点击收藏

我的YII2版本是2.0.7, 设置多语言时和其他教程有不同的地方, 所以整理如下

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

echo \Yii::t('app', 'whatisthis');

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

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

3. 创建i18n配置文件

yii message/config frontend/messages/config.php

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

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

'languages' => ['en', 'zh-CN'],

4. 创建message文件, 执行

yii message frontend/messages/config.php

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

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

添加一行

'whatisthis' => '这是啥玩意',

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

components中加入

'i18n' => ['translations' => [ 'app*' => [ 'class' => 'yii\i18nphpMessageSource', //'basePath' => [email protected]/messages', //'sourceLanguage' => 'en-US', 'fileMap' => [ 'app' => 'yii.php', 'app/error' => 'error.php', ], ],],
], 注意, 如果想要更改validate等yii本身的翻译 需增加下面设置到'translations' => []中: 'yii' => [ 'class' => 'yii\i18n\PhpMessageSource', 'sourceLanguage' => 'en-US', 'basePath' => [email protected]/messages' ],

components同等级后加入

'language' => 'zh-CN',

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

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

'whatisthis' => '@@这是啥玩意@@',

很奇怪的两边多出@@.

在Yii2中使用Pjax导致Yii2内联脚本载入失败的问题 http://www.linuxidc.com/Linux/2016-03/128949.htm

Yii2 实现修改密码功能 http://www.codesec.net/Linux/2015-07/120137.htm

Yii 用户登陆机制 http://www.codesec.net/Linux/2015-01/111602.htm

Yii中引入js和css文件 http://www.codesec.net/Linux/2015-01/111603.htm

Yii 不完全解决方案 http://www.codesec.net/Linux/2015-01/111606.htm

Yii CGridView 基本使用 http://www.codesec.net/Linux/2015-01/111607.htm

Yii框架分布式缓存的实现方案 http://www.codesec.net/Linux/2015-02/113828.htm

Yii 的详细介绍 : 请点这里

Yii 的下载地址 : 请点这里

本文地址 : http://www.codesec.net/Linux/2017-01/139314.htm

本文开发(php)相关术语:php代码审计工具 php开发工程师 移动开发者大会 移动互联网开发 web开发工程师 软件开发流程 软件开发工程师

主题: LinuxCG
分页:12
转载请注明
本文标题:Yii2配置多语言
本站链接:http://www.codesec.net/view/522126.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(php) | 评论(0) | 阅读(16)