热搜: 分页类  验证码  PHP  Laravel  Jpgraph  ASP.NET  windows7  Swift  jsp  Windows补丁 
  • 编程语言首页
  • 脚本语言
  • 其他教程
  • C#教程
  • VisualBasic
  • Objective-C
  • VC/MFC
  • Python
  • JSP编程
  • ASP.NET
  • Java教程
  •  

    Yii2配置多语言

       日期:2017-02-05     浏览:476    评论:0    
    核心提示:我的YII2版本是2.0.7, 设置多语言时和其他教程有不同的地方, 所以整理如下1. 在一个controller里面写一个调用i18n的语句, 比如actionIndexecho \Yii::t('app', 'whatisthis');现在进入这个页面, 页面输出whatisthis2. 手动创建一个文件夹messages来存放多语言

    我的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\i18n\PhpMessageSource',
                        //'basePath' => '@app/messages',
                        //'sourceLanguage' => 'en-US',
                        'fileMap' => [
                            'app' => 'yii.php',
                            'app/error' => 'error.php',
                        ],
                    ],
                ],
            ],
    
    注意, 如果想要更改validate等yii本身的翻译
    需增加下面设置到'translations' => []中:
    'yii' => [ 'class' => 'yii\i18n\PhpMessageSource', 'sourceLanguage' => 'en-US', 'basePath' => '@app/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.linuxidc.com/Linux/2015-07/120137.htm

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

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

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

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

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

    Yii 的详细介绍 请点这里

    Yii 的下载地址 请点这里

    本文永久更新链接地址 http://www.linuxidc(168学习网 www.300168.com).com/Linux/2017-01/139314.htm

     
    标签: Yii
     
    更多>同类编程语言
    0相关评论

    点击排行
    猜你喜欢
    网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  广告服务  |  网站留言  |  违规举报