亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

yii2如何切換多語言包

發布時間:2021-01-14 11:36:28 來源:億速云 閱讀:297 作者:小新 欄目:編程語言

小編給大家分享一下yii2如何切換多語言包,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

yii2怎么切換多語言包

1、配置組件

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

2、創建messages目錄

在web同級目錄下創建messages目錄,此目錄存放語言配置文件

創建messages/zh-CN/app.php,zh-CN為語言標識( \Yii::$app->session['language'] = 'zh-CN' 即配置為zh-CN語言),app.php中存放語言配置數組(app.php的名字由配置組件時‘app’選項確定)

下面時app.php文件內容

<?php
return [
    //常用
    'Action' => '操作',
    'Search' => '搜索',
    'Reset' => '重置',
];

3、實現語言切換

有兩種方法:

a)需要給每個controller進行初始化(都寫上init函數),在init函數中主要就是給Yii::$app->language 賦值。例如:Yii::$app->language = 'zh-CN'。

b)在web/index.php(入口文件)中,將創建應用的代碼改為下面的代碼

$application = new yii\web\Application($config);
$application->language = isset(\Yii::$app->session['language']) ? \Yii::$app->session['language'] : 'en';
$application->run();

4、編寫控制器方法,實現語言切換

public function actionLanguage(){       
    $language=  \Yii::$app->request->get('lang');  
    if(isset($language)){  
        \Yii::$app->session['language']=$language;  
    }  
    //切換完語言哪來的返回到哪里
    $this->goBack(\Yii::$app->request->headers['Referer']);  
}

要想實現語言的切換,只要帶'lang'參數調用此方法就可以了!

以上是“yii2如何切換多語言包”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

营口市| 社会| 岳普湖县| 贵州省| 宁强县| 福泉市| 紫阳县| 雅江县| 石阡县| 陆川县| 长治市| 新化县| 绍兴市| 时尚| 宜都市| 伊宁县| 滕州市| 富平县| 故城县| 洛阳市| 内乡县| 平果县| 彝良县| 衡山县| 建阳市| 平陆县| 舟山市| 广昌县| 乌审旗| 永丰县| 怀仁县| 新蔡县| 绥阳县| 五原县| 怀化市| 怀集县| 敖汉旗| 布尔津县| 南部县| 玉屏| 宁德市|