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' => ]
{
App::setLocale($locale);
return redirect()->back();
}
<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!