Bonjour,
Je cherche le meilleur moyen pour gérer les changements de langues j'ai beau visualiser toutes les solutions possibles aucun ne me satisfait vraiment.
Voici les solutions envisagées :
1) Création d'un fichier XML pour chaque langue et chargement du bon fichier suivant la langue.
Inconvénients : A chaque page ou dans un fichier optimisé, à chaque changement de langue où à l'ouverture de l'application on est obligé de lancer le parseur sur le fichier XML qui peut être assez volumineux si on veut garder une certaine cohérence hiérarchique. Par exemple :
Tout ceci pour seulement 2 libellés à moins de casser toutes la structure mais dans ce cas je ne vois pas l'avantage du XML. L'avantage est bien sûr que tout un chacun comprenne le fichier et puisse modifier correctement les libellés sans avoir accès au code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14<document> <menuGauche> <libMenu1> Accueil </libMenu1> </menuGauche> <pageCentrale> <bandeau> <nomSite> MonSite </nomSite> <bandeau> </pageCentrale> </document>
2) Création d'un fichier PHP de variables globales pour chaques langue et include du bon fichier suivant la langue.
Inconvénients :
- La structure n'apparait pas. Il n'est donc pas simple de savoir quel variable correspond à quel libellé à moins de se tapper tout le code ou d'être un dieu du nommage de variable
- Les différentes solutions que ce soient des variables standard ou des tableaux associatifs ou même dans un cas extrême des classes, nécessite de donner un identifiant pour chaque libellé, ce qui peut s'avérer énorme et compliqué à déterminer même en tant que dieu du nommage (par ex "libBtConnexionMenuGauche")
3) On multiplie chaque page par autant de langues.
Inconvénients : Nombreux = Redondance des modifications de structures, nombre de fichiers énormes...
4) Se créer une interface d'admin en PHP d'administration des langues avec construction d'un fichier PHP ou XML ou TXT (peu importe) mais en background donc invisible à l'utilisateur
Inconvénients : Difficile de trouver une interface simple d'utilisation qui permet de savoir quel libellé on est en train de paramétrer
Merci de vos solutions ou de m'indiquer les techniques que vous utilisez pour de telles problèmes.







Répondre avec citation



Partager