J'ai été occupé avec des projets ces derniers temps, donc je n'ai pas pu écrire beaucoup. Le contenu principal de cet article est de savoir comment implémenter un backend multilingue.
L'entreprise doit écrire un backend multilingue , ce qui est déjà arrivé, je ne l'ai jamais fait auparavant, alors je suis allé à Baidu pour le vérifier. C'est la première fois que j'utilise le framework TP depuis deux ans et découvre que le framework possède sa propre fonction de commutation multilingue. Je donne vraiment un coup de pouce ici.
Ensuite, implémentons cette fonction.
Utiliser le framework comme v5.1.38 LTS
Allez dans le fichier de configurationconfig/app.php
et vous pouvez voir que la seule information de configuration sur la langue est ces deux paramètres.
lang_switch_on
Ce paramètre est la langue du navigateur surveillée automatiquement.
default_lang Concernant ce paramètre, il sera directement par défaut en chinois avant de passer à d'autres langues Après avoir compris le fichier de configuration, nous devons créer le répertoire lang pour les modules requis et configurer le pack de langue pour la langue correspondante.
Ici, Kaka est configuré uniquement en anglais et en chinois. Si vous avez besoin d'autres langues, vous pouvez les ajouter vous-même. À cette étape, vous constaterez qu'aucun paramètre du début à la fin n'est utilisé pour configurer la liste des langues. Le fichier de configuration n'a pas non plus été trouvé.
Mais vous pouvez voir cette ligne de code dans la documentation. Allons au code source et jetons un œil.
Vous pouvez voir clairement dans le code source que la valeur du nom du cookie de langue est également fixe et que la période de validité du cookie est de 3600. Ceux-ci doivent être ajustés en fonction de votre propre projet.
Le plus important est de regarder la liste des langues autorisées. Nous continuons à tracer cette variable À la fin du fichier thinkphp/library/think/Lang.php
nous pouvons voir une méthode, qui est exactement la méthode donnée dans le document Puisque l'ensemble de notre backend doit utiliser plusieurs langues, nous devons configurer en commun
dans la vue Le La méthode languageChange
est appelée directement dans le modèle. a une variable dans la vue appelée $languageName
. Cette variable est extraite directement du fichier de configuration par KaKa et sera ajustée à la base de données ultérieurement.
Ensuite, écrivez une méthode changeLanguage
dans le contrôleur pour gérer le changement de cookie après le changement de langueÀ ce stade, notre page d'arrière-plan ressemble à ceci
Après les opérations ci-dessus, nous pouvons changer de langue en fonction du pack de langue que nous avons défini
.Dans le modèle, nous devons utiliser la balise de modèle lang pour obtenir des donnéesC'est le statut anglaisC'est le statut chinoisCeci termine la mise en œuvre du multilingue.
J'ai tellement dit ci-dessus, mais je viens de résumer chaque étape Les étapes sont écrites pour tout le monde.
Les points clés sont les suivants
application/config.php
Modification du fichier de configurationLa persévérance dans l'apprentissage, le blogging et le partage est la clé de Kaka carrière Une conviction qui a toujours été défendue. J'espère que l'article de Kaka sur Nuoda Internet pourra vous apporter un peu d'aide.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!