Maison  >  Article  >  cadre php  >  Internationalisation et localisation dans Laravel : répondre aux besoins des différentes langues et régions

Internationalisation et localisation dans Laravel : répondre aux besoins des différentes langues et régions

王林
王林original
2023-08-26 16:21:261298parcourir

Internationalisation et localisation dans Laravel : répondre aux besoins des différentes langues et régions

Internationalisation et localisation dans Laravel : répondre aux besoins de différentes langues et régions

À l'ère actuelle de l'interconnexion mondiale, il est devenu de plus en plus important de développer une application prenant en charge plusieurs langues et régions. En tant que framework PHP open source, Laravel fournit de riches fonctions d'internationalisation et de localisation, permettant aux développeurs d'adapter facilement les applications aux besoins de différentes langues et régions. Cet article explique comment utiliser ces fonctions dans Laravel.

1. Configurez le fichier de langue

Tout d'abord, nous devons configurer le fichier de langue. Laravel utilise des fichiers au format JSON comme fichiers de traduction. Pour chaque langue, il existe un fichier JSON correspondant. Par défaut, ces fichiers sont stockés dans le répertoire resources/lang. Nous pouvons créer des sous-répertoires dans différentes langues sous ce répertoire selon les besoins, comme en (anglais) et zh-CN (chinois simplifié).

Ensuite, nous devons créer un fichier de langue. Dans le sous-répertoire de la langue correspondante, créez un nouveau fichier JSON, tel que en.json. Dans ce fichier, nous pouvons définir différentes paires clé-valeur de traduction, par exemple :

{
"welcome": "Bienvenue sur notre site Web",
"contact_us": "Contact Us"
}

2. Utiliser la traduction

Une fois les fichiers de langue configurés, nous pouvons utiliser les traductions correspondantes dans l'application. Pour afficher les fichiers, vous pouvez utiliser la directive @lang fournie par Laravel pour la traduction. Par exemple :



<meta charset="UTF-8">
<title>@lang('welcome')</title>


<h1>@lang('welcome')</h1>
<p>@lang('contact_us')</p>


Dans l'exemple ci-dessus, nous utilisons la directive @lang pour traduire « bienvenue » et « contact_us » en conséquence texte de langue. En fonction des paramètres de langue de l'utilisateur, Laravel sélectionne automatiquement le texte traduit correct pour le rendu.

Si vous souhaitez traduire dans le contrôleur ou le modèle, vous pouvez utiliser la méthode trans fournie par Laravel. Par exemple :

public function index()
{
$welcome = trans('welcome');
$contactUs = trans('contact_us');
return view('welcome', compact('welcome', 'contactUs ' ));
}

Dans le code ci-dessus, nous attribuons le texte traduit à des variables via la méthode trans, puis transmettons ces variables à la vue.

3. Changement de langue dynamique

En plus de la traduction de langue statique, Laravel fournit également la fonction de changement de langue dynamique. Cela signifie que les utilisateurs peuvent sélectionner dynamiquement différentes langues au sein de l'application. Pour obtenir cette fonctionnalité, nous devons définir les paramètres régionaux de l'application.

Dans le fichier config/app.php, vous pouvez trouver le tableau locales. Dans le tableau, ajoutez les codes de langue pris en charge et les noms correspondants, par exemple :

'locales' => [
'en' => 'English',
'zh-CN' => ]

Ensuite, lorsque vous devez changer de langue, vous pouvez utiliser la méthode setLocale fournie par Laravel pour définir les paramètres régionaux. Par exemple :

public function switchLocale($locale)

{
App::setLocale($locale);
return redirect()->back();
}

Dans le code ci-dessus, nous définissons les paramètres régionaux via la méthode setLocale et utilisez la méthode redirect pour rediriger l'utilisateur vers la page précédente.

Grâce aux étapes ci-dessus, nous pouvons implémenter la fonction de changement dynamique de langue dans les applications Laravel.

Conclusion

Les fonctionnalités d'internationalisation et de localisation de Laravel permettent aux développeurs de répondre facilement aux besoins de différentes langues et régions. En configurant les fichiers de langue, en utilisant des instructions ou des méthodes de traduction et en implémentant un changement de langue dynamique, nous pouvons créer une application globale. Que vous développiez des produits pour le marché mondial ou que vous personnalisiez des applications pour des utilisateurs dans des régions spécifiques, les fonctions d'internationalisation et de localisation de Laravel peuvent fournir un bon support.

Code de référence :



<meta charset="UTF-8">
<title>@lang('welcome')</title>


<h1>@lang('welcome')</h1>
<p>@lang('contact_us')</p>

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!

Déclaration:
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