Bonjour,
J'ai un petit problème d'extraction de données.
J'ai un dictionnaire de mots en deux langues ( en et fr ) situé dans un fichier json.
Je charge mes paires dans un tableau sous la forme d'objet.
Je sélectionne une entrée aléatoirement dans le tableau pour faire un quizz.
J'ai donc mon fichier JSON sour la forme :
{
"one": "un",
"two": "deux",
"three": "trois",
}
Je récupere donc un tableau comme suis :
dico[1] { en: "one", fr: "un"}
dico[2] { en: "two", fr: "deux"}
...
Mon chiffre aléatoire en fonction de la taille du tableau est placé dans "$random"
Ma langue selectionnée est placé dans "$lang"
En fonction de la langue selectionnée, je souhaiterai récupérer la bonne valeur dans l'objet de mon tableau.
Je fais donc manuellement dico[$random].en pour le mot en anglais et dico[$random].fr pour celui en français
Le soucis c'est lorsque je souhaites récupérer avec la variable $lang cela ne fonctionne plus. dico[$random].$lang me retourne '''undefined''
Merci de votre aide
Salut
Si dico[$random].en pour le mot en anglais et dico[$random].fr pour celui en français existe bien fait dico[$random][$lang]
Sinon tu as d'autre moyen plus propre de faire cela.
bàt
Je veux bien un peu d'aide alors.
Merci
Je ne sais pas pourquoi je voulais absoluement mettre un point.
Un grand nombre de framework qui font ca (i18n) utilise un fichier json par langue
Exemple :
en.json
{
"one": "one",
"two": "two",
"three": "three",
}
fr.json
{
"one": "un",
"two": "deux",
"three": "trois",
}
es.json, etc.
Ainsi dans ton code tu as toujours la meme variable : dico.one quie est = à un si tu es en fr par exemple.
Tu dois juste prévoir une function qui charge le bon json dans ta variable dico à chaque changement de langue.
j'espere que je suis +- clair ;)