CakePHP ist ein Open-Source-PHP-Framework, das die Integration der mehrsprachigen Internationalisierung (i18n) unterstützt. i18n kann Ihre Anwendung mehrsprachig machen, sodass Sie leichter ein internationales Publikum ansprechen und lokale Benutzer besser bedienen können. In diesem Artikel werfen wir einen detaillierten Blick auf die Verwendung von CakePHP i18n.
Zuerst müssen Sie die mehrsprachige Funktionalität von CakePHP aktivieren. Aktualisieren Sie dazu die Konfigurationsdatei config/bootstrap.php und fügen Sie den folgenden Code zu Ihrer Anwendung hinzu: #Als nächstes müssen Sie die Sprachdatei im Verzeichnis config/Locale erstellen. Diese Sprachdateien sollten den Namen locale%iso-639-1code%iso-3166-1-alpha-2 format.php tragen. Zum Beispiel en_US.php, es_ES.php oder de_DE.php usw.
Configure::write('App.defaultLocale', 'en_US'); //设置默认语言 Configure::write('App.languages', ['en_US', 'es_ES', 'de_DE']); //可选语言
return [ 'welcome' => 'Welcome', 'hello' => 'Hello', ];
In de_DE.php können Sie schreiben:
return [ 'welcome' => 'Bienvenido', 'hello' => 'Hola', ];
In einer Ansicht können Sie die Funktion __() verwenden, um Text zu übersetzen. Wenn Sie beispielsweise „Willkommen“ in Ihrer Ansicht anzeigen möchten, könnten Sie schreiben:
return [ 'welcome' => 'Willkommen', 'hello' => 'Hallo', ];
<h1><?php echo __('welcome'); ?></h1>
Ausgabe Mein Name ist Lucas.
KontrollebeneIm Controller können Sie zum Ändern die Funktion „Configure::write('Config.sprache', 'langauge')“ verwenden Aktuelles Gebietsschema:
<?php echo __('My name is %name%', array('name' => 'Lucas')); ?>
Configure::write('Config.language', 'de_DE'); //将语言环境设置为de_DE
In diesem Beispiel wird es_ES.php geladen und die Übersetzungszeichenfolge home_title verwendet.
Datum und UhrzeitCakePHP i18n unterstützt auch lokalisierte Datums- und Uhrzeitformate. Zum Beispiel:
public function index() { Configure::write('Config.language', 'es_ES'); $this->set('title', __('home_title')); }
echo $this->Time->nice(new DateTime('2018-11-20')); //在控制器分配或直接用数组传递时使用 echo $this->Time->nice($dateObject);
Wie Sie sehen, ist i18n von CakePHP sehr einfach zu bedienen. Durch die Nutzung der vom Framework bereitgestellten i18n-Unterstützung können Sie Benutzern auf der ganzen Welt schnell und einfach Unterstützung für mehrere Sprachen und Lokalisierungen bereitstellen. Denken Sie daran, Ihrer Bewerbung immer einen klaren und präzisen Text zu geben, um die beste Benutzererfahrung zu erzielen.
Das obige ist der detaillierte Inhalt vonWie verwende ich i18n in CakePHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!