YII2 实现多语言配置的方法分享
框架(架构)  /  管理员 发布于 7年前   197
前言: 由于我的YII2版本是2.0.7, 设置多语言时和其他教程有不同的地方, 所以想着整理下,方便自己以后需要的时候和有需要的朋友参考学习。下面来一起学习学习吧。 方法如下: 1. 在一个controller里面写一个调用i18n的语句, 比如actionIndex 现在进入这个页面, 页面输出whatisthis 2. 手动创建一个文件夹messages来存放多语言相关文件, 如果是advanced版本则在frontend下面创建这个文件夹 3. 创建i18n配置文件 会自动生成一个config.php文件 然后打开 4. 创建message文件, 执行 这样在frontend/messages里面会生成en和zh-CN文件夹 5. 打开 添加一行 6. 在 components中加入 注意, 如果想要更改validate等yii本身的翻译 需增加下面设置到 components同等级后加入 7. 再刷新页面, 应该会显示"这是啥玩意"了. 8. 当你需要新增其他语言时候, 执行第3,4步会重新生成文件, 之前的翻译(whatisthis)会保留, 但我试了之后发现变成了 很奇怪的两边多出@@. 总结 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。echo \Yii::t('app', 'whatisthis');
yii message/config frontend/messages/config.php
frontend/messages/config.php
, language行设置为'languages' => ['en', 'zh-CN'],
yii message frontend/messages/config.php
frontend/messages/zh-CH/yii.php
'whatisthis' => '这是啥玩意',
/yii2/frontend/config/main.php
里设置'i18n' => [ 'translations' => [ 'app*' => [ 'class' => 'yii\i18n\PhpMessageSource', //'basePath' => '@app/messages', //'sourceLanguage' => 'en-US', 'fileMap' => [ 'app' => 'yii.php', 'app/error' => 'error.php', ], ], ], ],
'translations' => []
中:'yii' => [ 'class' => 'yii\i18n\PhpMessageSource', 'sourceLanguage' => 'en-US', 'basePath' => '@app/messages' ],
'language' => 'zh-CN',
'whatisthis' => '@@这是啥玩意@@',
您可能感兴趣的文章:
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号