Maison > cadre php > PensezPHP > le corps du texte

Savez-vous comment le multilingue ThinkPHP est implémenté ?

咔咔
Libérer: 2020-08-10 14:11:38
original
1928 Les gens l'ont consulté

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.

Avant-propos

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.

1. Implémentation multilingue en arrière-plan

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_onCe 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 Savez-vous comment le multilingue ThinkPHP est implémenté ?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. Savez-vous comment le multilingue ThinkPHP est implémenté ?À 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.

Savez-vous comment le multilingue ThinkPHP est implémenté ? 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 Savez-vous comment le multilingue ThinkPHP est implémenté ? À 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 Savez-vous comment le multilingue ThinkPHP est implémenté ? Puisque l'ensemble de notre backend doit utiliser plusieurs langues, nous devons configurer en commun Savez-vous comment le multilingue ThinkPHP est implémenté ?

2. Afficher la langue de changement

dans la vue Le La méthode languageChange est appelée directement dans le modèle. Savez-vous comment le multilingue ThinkPHP est implémenté ?Savez-vous comment le multilingue ThinkPHP est implémenté ? 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.

Savez-vous comment le multilingue ThinkPHP est implémenté ?Ensuite, écrivez une méthode changeLanguage dans le contrôleur pour gérer le changement de cookie après le changement de langueSavez-vous comment le multilingue ThinkPHP est implémenté ?À ce stade, notre page d'arrière-plan ressemble à ceciSavez-vous comment le multilingue ThinkPHP est implémenté ?

3. Test

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éesSavez-vous comment le multilingue ThinkPHP est implémenté ?C'est le statut anglaisSavez-vous comment le multilingue ThinkPHP est implémenté ?C'est le statut chinoisSavez-vous comment le multilingue ThinkPHP est implémenté ?Ceci termine la mise en œuvre du multilingue.

4.Résumé

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.phpModification du fichier de configuration
  • Ajoutez le répertoire lang dans le module correspondant et créez le package de langue requis
  • La vue effectue un changement de langue et appelle l'interface d'arrière-plan pour stocker la valeur du cookie. Enregistrez-le dans think_var
  • Le modèle peut utiliser la balise lang

La 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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!