Yii::t() 使用疑问 [ 2.0 版本 ]
我项目用的是advanced程序模板,我在frontend>components下建了一个a.php文件,代码如下:
<?php
/**
 * a.php
 * ------
 */
namespace frontend\components;
use Yii;
class a extends \yii\base\Object {
    public static function test(){
        return Yii::t('app', 'test ok');
    }
?>
然后,我在frontend>messages>zh-CN下建了一个app.php文件,代码如下:
<?php
/**
 * app.php
 * ------
 */
return [
    'test ok' => '测试好了',
];
?>
我在frontend模块下调用a::test(),可以正常返回测试好了,可我在backend模块下调用就不能正常返回,只返回test ok,
我的问题是:能不能在backend模块下也能正常使用a::test(),而不用在backend>messages>zh-CN下再重复建一个app.php文件,再把内容复制过来
最佳答案
- 
                                                

你把app.php放在
common\messages\zh-CN\app.php不就好了?当然,要改下配置文件,我就是这么玩的共 2 条回复
@tgy3300
common\config\main.php的components下增加'i18n' => [ 'translations' => [ 'app*' => [ 'class' => 'yii\i18n\PhpMessageSource', 'basePath' => '@common/messages', //'sourceLanguage' => 'en', 'fileMap' => [ 'app' => 'app.php', 'app/error' => 'error.php', ], ], 'model*' => [ 'class' => 'yii\i18n\PhpMessageSource', 'basePath' => '@common/messages', 'fileMap' => [ 'model' => 'model.php' ] ] ], ], 
其他 0 个回答
没有找到数据。
tgy3300
            注册时间:2015-03-20
最后登录:2018-09-12
在线时长:19小时53分
    最后登录:2018-09-12
在线时长:19小时53分
- 粉丝4
 - 金钱10
 - 威望10
 - 积分300