yii2 i18n

(basic 模版):修改config目录下的web.php文件,添加 
`
return [ ...

'language'=>'zh-CN',

... ] 
这样可以把yii2定义的英文翻译成中文,但是页头需要自己修改 views/layouts/main.php文件自己修改。 那么,如果用gii自动生成数据库CURD操作的话,数据库的显示怎么改成汉字呢? 需要在model类中定义attributeLabels()方法:
public function attributeLabels()
{

return [
    'id' => Yii::t('app', 'ID'),
    'xitong' => Yii::t('app', '应用系统名称'),

];

}
但是这样定义是死的,不灵活,浪费了Yii::t()函数的强大功能,翻译成其他语言还得修改源程序。以上述代码为例,修改代码为:
'xitong' => Yii::t('app', 'SystemName'),
在config目录下的web.php文件,添加以下内容:
'i18n' => [

        'translations' => [
            'app' => [
                'class' => 'yii\i18n\PhpMessageSource',
                //'basePath' => '@app/messages',
                //'sourceLanguage' => 'en-US',
                'fileMap' => [
                    'app' => 'app.php',
                ],
            ],
        ],
    ],
在basic目录下创建messages目录,在messages目录下创建zh-CN目录,在zh-CN目录下创建app.php文件,输入以下内容:

return [

'SystemName'=>'系统名称',
...
];
`
如果需要更改程其他语言,需要在messages目录下建立相应的语言目录,再在语言目录下建立app.php文件并写上翻译信息,最后修改web.php配置文件中的'language'=>''项成相依的语言代码就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值