Heim > Artikel > PHP-Framework > So wechseln Sie mehrsprachige Pakete in yii2
So wechseln Sie mehrsprachige Pakete in yii2
1. Konfigurationskomponenten
'components' => [ 'i18n' => [ 'translations' => [ '*' => [ 'class' => 'yii\i18n\PhpMessageSource', //'basePath' => '/messages', 'fileMap' => [ 'app' => 'app.php', ], ], ], ], ]
2. Erstellen Sie das Nachrichtenverzeichnis
Erstellen Sie das Nachrichtenverzeichnis im Webverzeichnis auf derselben Ebene. In diesem Verzeichnis wird die Sprachkonfigurationsdatei gespeichert
Nachrichten/zh-CN erstellen /app.php, zh-CN Zur Sprachidentifizierung (Yii::$app->session['sprache'] = 'zh-CN', d. h. als zh-CN-Sprache konfiguriert) wird das Sprachkonfigurationsarray gespeichert in app.php (der Name von app.php wird durch die Konfigurationskomponente bestimmt, wenn die Option „App“ festgelegt wird)
Das Folgende ist der Inhalt der app.php-Datei
<?php return [ //常用 'Action' => '操作', 'Search' => '搜索', 'Reset' => '重置', ];
3. Es gibt zwei Möglichkeiten, die Sprachumschaltung zu implementieren
Methode:
a) Jeder Controller muss initialisiert werden (schreiben Sie die Init-Funktion). Es dient hauptsächlich dazu, Yii::$app->Sprache einen Wert zuzuweisen. Beispiel: Yii::$app->sprache = 'zh-CN'.
b) Ändern Sie in web/index.php (Eintragsdatei) den Code zum Erstellen der Anwendung in den folgenden Code:
$application = new yii\web\Application($config); $application->language = isset(\Yii::$app->session['language']) ? \Yii::$app->session['language'] : 'en'; $application->run();
4. Schreiben Sie die Controller-Methode, um die Sprachumschaltung zu implementieren
public function actionLanguage(){ $language= \Yii::$app->request->get('lang'); if(isset($language)){ \Yii::$app->session['language']=$language; } //切换完语言哪来的返回到哪里 $this->goBack(\Yii::$app->request->headers['Referer']); }
Um die Sprache zu wechseln, rufen Sie diese Methode einfach mit dem Parameter „lang“ auf!
Weitere Tipps zur Verwendung von yii und Website-Erstellungs-Tutorials finden Sie unter Website-Erstellungs-Tutorials.
Das obige ist der detaillierte Inhalt vonSo wechseln Sie mehrsprachige Pakete in yii2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!