Beim Aufbau von mehrsprachigen Webanwendungen ist die Unterstützung chinesischer und englischer Sprache eine häufige funktionale Anforderung. Dieser Artikel konzentriert sich auf das ThinkPhp -Framework und führt vor, wie man flexible chinesische und englische Sprachwechselfunktionen durch Konfiguration und Entwicklung erzielt, um die internationale Erfahrung der Website zu verbessern.
Zunächst müssen Sie die ThinkPhp 6 -Version über Komponist installieren. Sie können schnell eine Entwicklungsumgebung mit den folgenden Befehlen erstellen:
composer create-project topthink/think myproject 6.0.*
Nach Abschluss der Installation können Sie mit der Konfiguration und Entwicklung von Sprachschaltfunktionen beginnen.
Fügen Sie der Konfigurationsdatei des ThinkPhp-Projekts sprachbezogene Einstellungen hinzu. Die allgemeine Konfigurationsdatei befindet sich in config/app.php :
// config/app.php
return [
// Standardsprache
'default_lang' => 'zh-cn',
// Liste der unterstützten Sprachen
'lang_list' => ['zh-cn', 'en-us'],
];
Durch Festlegen der Standard -Sprach- und Sprachliste können Sie sicherstellen, dass das System sowohl chinesische als auch englische Sprachen unterstützt.
Erstellen Sie zwei Sprachpaketdateien im App/Lang- Verzeichnis: Zh-Cn.php und en-us.php , entsprechend dem chinesischen und englischen Übersetzungsinhalt:
// app/lang/zh-cn.php
return [
'hello' => 'Hallo',
'welcome' => 'Willkommen auf meiner Website',
];
// app/lang/en-us.php
return [
'hello' => 'Hello',
'welcome' => 'Welcome to my website',
];
Das obige definiert den entsprechenden Inhalt desselben Schlüsselnamens in verschiedenen Sprachen, und das System stimmt automatisch entsprechend der aktuellen Sprache überein.
Wir können die Sprachen im Controller wechseln, indem wir Cookies einstellen:
public function switchLanguage($lang)
{
if (in_array($lang, config('lang_list'))) {
cookie('think_var', $lang);
}
}
Diese Methode setzt Cookies gemäß den Parametern der eingehenden Sprache, um das Gebietsschema zu aktualisieren.
In der Vorlage können Sie den Übersetzungsinhalt, der der Sprache über die Funktion Lang () entspricht, erhalten:
echo lang('hello');
Diese Funktion gibt den entsprechenden Sprachwert gemäß dem aktuellen Gebietsschema zurück.
Um den aktuellen Sprachstatus in der Vorlage anzuzeigen, können Sie die Urteilskekse verwenden, um zu erreichen:
echo cookie('think_var') === 'en-us' ? ' English' : ' chinesisch';
Dadurch wird der aktuelle Sprachstatus dynamisch angezeigt und die Benutzererfahrung verbessert.
Durch Konfigurieren von Sprachunterstützung, Erstellen von Sprachpaketen, Controller -Logik und Vorlagenurteil können Entwickler leicht chinesische und englische Sprachwechselfunktionen in ThinkPhp implementieren. Diese Methode ist flexibel und effizient und für alle Arten von Website -Projekten geeignet, die internationale Unterstützung erfordern.