Il existe récemment un besoin de créer un site Web dans différentes languespour les pays d'Europe, d'Amérique, du Moyen-Orient, d'Afrique, d'Asie et d'Océanie à travers le monde. Par exemple, si vous sélectionnez l'Espagne en Europe, ce site Web sera affiché en espagnol ; si vous sélectionnez la Biélorussie en Europe, ce site Web sera affiché en russe ; si vous sélectionnez le Japon en Asie, ce site Web sera affiché en japonais ; ...
Comment concrétiser un tel besoin ?
Pour le backend, je ne connais que php. Existe-t-il un bon moyen ? S'il vous plaît, donnez-moi quelques conseils.
Chaque langue correspond à une table de données ou à un tableau/objet
Switching
Vous pouvez utiliser un framework comme thinkphp, une langue et un pack de langue, c'est-à-dire que tous les endroits où le texte est affiché sont analysés avec des balises et que le dictionnaire des balises correspondantes dans le pack de langue est utilisé. Lorsque vous changez de langue, vous pouvez placer l'ID de langue dans les cookies et sélectionner le package linguistique à afficher en fonction de la langue.
i18n
Soutien international. Actuellement, beaucoup sont implémentés conformément à i18N.
Barre du pack de langue. Le projet préliminaire doit concevoir comment le changer et le mettre en œuvre
Je ne comprends pas la solution d'internationalisation de PHP, mais j'espère que cet article vous sera utile : Comment internationaliser une application Web ?
Je faisais ça récemment et ça m'a fait vomir.
Si vous utilisez un framework front-end, vous n'avez besoin que d'un caractère barre verticale (filtre) pour filtrer les données. Quant à la façon de filtrer, vous pouvez enregistrer les comparaisons en chinois et en anglais dans un fichier json.
Par exemple, j'ai un fichier zh.json Le contenu est
.Ensuite j'écris ce code dans le modèle
Maintenez ensuite une variable de langue globalement. Lorsque je sélectionne le chinois, je définis le paramètre passé à traduire en zh, afin de pouvoir convertir l'anglais en chinois
.