Yii2-国际化

Yii2-国际化

配置文件

<?php

$params = require __DIR__ . '/params.php';
$db = require __DIR__ . '/db.php';

$config = [
    ...
    'components' => [

        'i18n' => [
            'translations' => [
                '*' => [
                    'class' => 'yii\i18n\PhpMessageSource',
                    'basePath' => '@app/messages',
                    'fileMap' => [
                        'app' => 'app.php',
                    ],
                ],
            ],
        ],

    ],
    ...

];

return $config;

messages文件结构

yii2-basic
    - messages
        -en-US
            -app.php
        -zh-CN
            -app.php

app.php文件

zh-CN版

<?php

return [
    'name'=>'张三',
    'This is a string to translate' => '这是翻译字符串'
];

en-US版

<?php

return [
    'name'=>'zhangsan',
    'This is a string to translate' =>'This is a string to translate'
];

测试

//设置中文
Yii::$app->language = 'zh-CN';
//设置英文
// Yii::$app->language = 'en';
echo Yii::$app->language;
echo "<br>";
echo Yii::t('app', 'name');
echo "<br>";
echo Yii::t('app', 'This is a string to translate');
posted @ 2024-04-07 15:14  胡勇健  阅读(2)  评论(0编辑  收藏  举报