Si votre projet souhaite prendre en charge les versions multilingues, vous devez utiliser Zend_Translate. La documentation détaillée de Zend_Translate est ici, mais si vous voulez être paresseux, c'est aussi très simple. Le document View Helpers présente comment utiliser Translate Helper pour implémenter facilement le support multilingue.
1. Préparer les fichiers de traduction
Zend_Translate prend en charge les fichiers de traduction dans plusieurs formats. Le format à choisir peut être trouvé ici. S'il n'y a pas beaucoup d'entrées (moins de 5 000), vous pouvez alors envisager d'utiliser le format de tableau le plus intuitif et l'écrire dans un fichier php. Supposons que nous ayons besoin d'un support de la version chinoise. Le fichier de traduction s'appelle zh_cn.php et est placé dans le dossier des langues parallèlement à l'application. Le contenu du fichier est le suivant :
<?php
tableau de retour (
'hello_world' => 'Bonjour ! ',
);
2. Chargez le fichier de traduction
et éditez le fichier html/index.php Avant d'exécuter le contrôleur frontal, insérez le code suivant :
require_once 'Zend/Registry.php';
require_once 'Zend/Translate.php';
$adapter = new Zend_Translate('array', $rootPath . '/langues/zh_cn.php', 'zh');
Zend_Registry::set('Zend_Translate', $adapter);
La fonction du code ci-dessus est de charger zh_cn.php et de le sauvegarder en tant que variable globale. Zend_Registry peut être considéré comme un conteneur de variables globales.
Remarque : Lors de la sauvegarde dans Zend_Registry, la valeur clé doit être Zend_Translate, sinon les résultats attendus ne seront pas obtenus.
3. Modifiez le fichier application/views/scripts/index/index.phtml à l'aide de l'entrée de traduction dans la vue
et remplacez l'original "<h1>Hello World !</h1>" par :
<h1><?php echo $ this- >translate('hello_world');></h1>
4. Affichez la page.
À ce stade, ce que vous voyez dans le navigateur devrait être « Bonjour ! ».