小編給大家分享一下yii2如何切換多語言包,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)整合營(yíng)銷推廣、網(wǎng)站重做改版、安鄉(xiāng)網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁面制作、購物商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為安鄉(xiāng)等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。yii2怎么切換多語言包
1、配置組件
'components' => [ 'i18n' => [ 'translations' => [ '*' => [ 'class' => 'yii\i18n\PhpMessageSource', //'basePath' => '/messages', 'fileMap' => [ 'app' => 'app.php', ], ], ], ], ]
2、創(chuàng)建messages目錄
在web同級(jí)目錄下創(chuàng)建messages目錄,此目錄存放語言配置文件
創(chuàng)建messages/zh-CN/app.php,zh-CN為語言標(biāo)識(shí)( \Yii::$app->session['language'] = 'zh-CN' 即配置為zh-CN語言),app.php中存放語言配置數(shù)組(app.php的名字由配置組件時(shí)‘a(chǎn)pp’選項(xiàng)確定)
下面時(shí)app.php文件內(nèi)容
<?php return [ //常用 'Action' => '操作', 'Search' => '搜索', 'Reset' => '重置', ];
3、實(shí)現(xiàn)語言切換
有兩種方法:
a)需要給每個(gè)controller進(jìn)行初始化(都寫上init函數(shù)),在init函數(shù)中主要就是給Yii::$app->language 賦值。例如:Yii::$app->language = 'zh-CN'。
b)在web/index.php(入口文件)中,將創(chuàng)建應(yīng)用的代碼改為下面的代碼
$application = new yii\web\Application($config); $application->language = isset(\Yii::$app->session['language']) ? \Yii::$app->session['language'] : 'en'; $application->run();
4、編寫控制器方法,實(shí)現(xiàn)語言切換
public function actionLanguage(){ $language= \Yii::$app->request->get('lang'); if(isset($language)){ \Yii::$app->session['language']=$language; } //切換完語言哪來的返回到哪里 $this->goBack(\Yii::$app->request->headers['Referer']); }
要想實(shí)現(xiàn)語言的切換,只要帶'lang'參數(shù)調(diào)用此方法就可以了!
以上是“yii2如何切換多語言包”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
網(wǎng)站題目:yii2如何切換多語言包-創(chuàng)新互聯(lián)
文章出自:http://aaarwkj.com/article36/cccdsg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、靜態(tài)網(wǎng)站、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、移動(dòng)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容