Yii2 legt die Methode zum Wechseln der Sprache fest: Konfigurieren Sie zuerst die Komponenten, erstellen Sie dann ein Nachrichtenverzeichnis im selben Verzeichnis wie das Web, in dem die Sprachkonfigurationsdatei gespeichert wird, und schreiben Sie schließlich die Controller-Methode implementieren Einfach die Sprache wechseln.
Yii2.0 realisiert die Umschaltung mehrerer Sprachen
Empfehlung: „yii-Tutorial“
1. Komponenten konfigurieren
'components' => [ 'i18n' => [ 'translations' => [ '*' => [ 'class' => 'yii\i18n\PhpMessageSource', //'basePath' => '/messages', 'fileMap' => [ 'app' => 'app.php', ], ], ], ], ]
2. Nachrichtenverzeichnis erstellen
Nachrichten im gleichen Ebenenverzeichnis erstellen des Webverzeichnisses speichert dieses Verzeichnis die Sprachkonfigurationsdatei
Create messages/zh-CN/app.php, zh-CN ist die Sprachkennung ( Yii::$app->session['Sprache' ] = 'zh-CN' (d. h. als zh-CN-Sprache konfiguriert), das Sprachkonfigurationsarray wird in app.php gespeichert (der Name von app.php wird durch die Option 'app' beim Konfigurieren der Komponente bestimmt)
Das Folgende ist der Inhalt der app.php-Datei
<?php return [ //常用 'Action' => '操作', 'Search' => '搜索', 'Reset' => '重置', ];
3. Es gibt zwei Möglichkeiten, die Sprachumschaltung zu implementieren
:
a:
muss jeden Controller initialisieren (schreiben Sie die Init-Funktion). In der Init-Funktion besteht die Hauptaufgabe darin, 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. Sprachumschaltung 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 Sprachumschaltung zu implementieren, rufen Sie diese Methode einfach mit dem Parameter „lang“ auf!
Das obige ist der detaillierte Inhalt vonSo stellen Sie die Sprachumschaltung in yii2 ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!