Question

J'ai déjà créé un module linguistique pour un site, mais je ne sais pas si ce que je fais est la meilleure méthode.

En gros, tout ce que j'ai est un fichier avec des variables définissant des constantes de chaîne. Généralement, un ensemble de tableaux où un tableau fait généralement référence à un élément particulier du site.

Ensuite, le code de site inclut simplement le fichier approprié en fonction d'un indicateur, puis renvoie l'écho de l'élément de tableau approprié.

Quelles sont certaines façons de le faire pour réduire les problèmes de maintenance et les performances?

Était-ce utile?

La solution

Je suggère d'utiliser Zend_Translate . C’est un peu une combinaison des autres suggestions laissées ici, mais elles sont plus faciles à gérer et mieux conçues.

Vous pouvez changer d’adaptateur en fonction de vos préférences (prend en charge gettext, csv et une multitude d’autres), vous n’avez pas besoin de définir ni de paramètres globaux polluant votre étendue globale et cela est bien documenté.

Autres conseils

La meilleure option que vous puissiez avoir, avec PHP, est GetText , mais tous les serveurs ne l’ont pas intégré, de sorte que cela peut être un obstacle si vous gérez votre serveur.

Voici quelques-unes des méthodes les plus courantes:

1) Utilisez define ('SOME_STRING', 'Une chaîne'); - Créez simplement un fichier différent avec ces définitions pour chaque langue. C’est très facile, et vous n’avez pas à utiliser "global". partout.

2) Enveloppez les chaînes dans une fonction: traduire ('Ma chaîne') - ceci est plus flexible, car vous pouvez analyser votre code pour créer des listes de chaînes à traduire et ajouter des fonctionnalités telles que des variables , par exemple translate ('je peux compter jusqu'à [nombre]', 10); (bien sûr, vous choisissez normalement un nom de fonction plus court, comme "_")

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top