Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3213 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Multi-langue

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Multi-langue

n°265574
Hansolo
Posté le 09-12-2002 à 16:45:17  profilanswer
 

Salut,
 
Sur un site multi-langue utilisant la technique des tableaux :
 

Code :
  1. $lang["0"] = "salut"; // fichier lang-fr.php
  2. et
  3. $lang["0"] = "hello"; // fichier lang-en.php


 
sachant que le fichier lang-xx.php (xx = fr ou en selon la configuration) est inclu au début du script, peut-on avoir des variables dans ce tableau, genre :
 

Code :
  1. $lang["0"] = "bonjour $variable";


 
J'utilise des templates et lorsque que je défini les variables de la template, du genre :
 

Code :
  1. $variable = "toto";
  2. (...)
  3. $template->set_var("TEST", $lang["0"]);


 
ben ça marche pas, $variable ne s'affiche pas. Pourquoi ?
 
Car si je fais :
 

Code :
  1. $variable = "toto";
  2. (...)
  3. $template->set_var("TEST", "bonjour $variable" );


 
là ça marche.


Message édité par Hansolo le 09-12-2002 à 16:48:44
mood
Publicité
Posté le 09-12-2002 à 16:45:17  profilanswer
 

n°265579
lorill
Posté le 09-12-2002 à 16:50:02  profilanswer
 

parce que ta chaine contient la valeur de la variable au moment de l'interpretation de la chaine...
 
methode bourrin :
 
$lang[0] = "bonjour \$variable";
$variable = "toto";
$template->set_var("TEST", eval($lang[0]));

n°265627
Hansolo
Posté le 09-12-2002 à 17:06:03  profilanswer
 

Merci lorill, mais pourquoi :
 

lorill a écrit :

methode bourrin :


Message édité par Hansolo le 09-12-2002 à 17:06:39
n°265632
lorill
Posté le 09-12-2002 à 17:07:04  profilanswer
 

parce que faire un eval a chaque fois, c'est un peu crade...

n°265636
lorill
Posté le 09-12-2002 à 17:08:44  profilanswer
 

sans compter que si je mets des conneries dans la chaine ca marchera plus... deja comme ca en fait, ca devrait pas marcher, je viens d'y penser...
 
ca devrait plutot etre "\"bonjour \$variable\""...
et c'est pas beau, et si je mets un ; dedans, puis une belle commande pour tout foutre en l'air, ben tu vas l'executer  [:sinclaire]

n°265646
Hansolo
Posté le 09-12-2002 à 17:12:42  profilanswer
 

Peut-être qu'en ajoutant une fonction qui évalue tous les éléments du tableau $lang en début du fichier lang-xx.php ça serait mieux ?

n°265651
lorill
Posté le 09-12-2002 à 17:14:14  profilanswer
 

Hansolo a écrit :

Peut-être qu'en ajoutant une fonction qui évalue tous les éléments du tableau $lang en début du fichier lang-xx.php ça serait mieux ?


non, ca changerait rien, déja c'est encore crade, et en plus au moment de l'evaluation $variable serait inconnu => case départ

n°265653
omega2
Posté le 09-12-2002 à 17:15:11  profilanswer
 

Pourquoi ne pas avoir un object "langue" contenant une fonction par message avec les paramêtres qu'on veut voir affiché dans le message?
Ensuite, il suffirait juste d'avoir un fichier à inclure (celui qui contient l'object dans la bonne langue) et le tour est joué.

n°265726
Hansolo
Posté le 09-12-2002 à 17:48:11  profilanswer
 

omega2 a écrit :

Pourquoi ne pas avoir un object "langue" contenant une fonction par message avec les paramêtres qu'on veut voir affiché dans le message?
Ensuite, il suffirait juste d'avoir un fichier à inclure (celui qui contient l'object dans la bonne langue) et le tour est joué.


 
http://forum.hardware.fr/icones/icon5.gif
 
Lorill, je suis d'accord.

n°265879
Hansolo
Posté le 09-12-2002 à 19:06:51  profilanswer
 


 
oui ? :D

mood
Publicité
Posté le 09-12-2002 à 19:06:51  profilanswer
 

n°265881
lorill
Posté le 09-12-2002 à 19:11:20  profilanswer
 

au fait, ca existe pas gettext pour php ?

n°265887
Hansolo
Posté le 09-12-2002 à 19:14:43  profilanswer
 

si

n°265894
lorill
Posté le 09-12-2002 à 19:27:31  profilanswer
 

ben pourquoi tu t'en sers pas alors  :??:

n°265896
Hansolo
Posté le 09-12-2002 à 19:32:24  profilanswer
 

C'est très dépendant de la configuration du serveur et de la disponibilité des traductions. Donc...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Multi-langue

 

Sujets relatifs
pdf en multi colone ???[Java]Multi Thread Conseil !!
Algo de calculs stat pour détection d'une distribution multi-modale[VB6]TabStrip / Pb avec tableau multi-dimensionnel
phpmyadmin 2.3 + multi userMulti thread
tri d'un tableau multi-dimensionnel .. besoin d'aide..Débutant, cherche exemple de dev. avec base Access Multi-Utilisateurs
comment savoir la langue de l'utilisateur avec ASP ?Comment faire le multi-langue
Plus de sujets relatifs à : Multi-langue


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR