Maison  >  Article  >  cadre php  >  Développement Laravel : Comment utiliser la localisation Laravel pour prendre en charge différentes langues ?

Développement Laravel : Comment utiliser la localisation Laravel pour prendre en charge différentes langues ?

WBOY
WBOYoriginal
2023-06-13 18:30:521498parcourir

Avec l'accélération de la mondialisation, de plus en plus de sites Web et d'applications doivent prendre en charge plusieurs langues. Pour que votre application serve mieux les utilisateurs du monde entier, Laravel fournit une puissante boîte à outils de localisation. Dans cet article, nous présenterons les concepts de base de la localisation de Laravel et montrerons comment l'utiliser pour prendre en charge différentes langues.

Qu'est-ce que la localisation Laravel ?

Laravel Localization est une extension du framework Laravel qui fournit un moyen pratique de gérer les chaînes multilingues. Cette extension vous permet d'utiliser facilement différentes langues dans votre application et de renvoyer différentes chaînes en fonction des paramètres régionaux de l'utilisateur.

Comment utiliser la localisation Laravel ?

Pour utiliser la localisation de Laravel, vous devez effectuer les étapes suivantes :

Étape 1 : Installer Laravel

Si vous avez déjà installé Laravel, vous pouvez ignorer cette étape. Sinon, veuillez d'abord installer Laravel. Vous pouvez installer Laravel via la documentation officielle https://laravel.com/docs.

Étape 2 : Configurer la localisation de Laravel

Dans Laravel, vous devez configurer l'application pour prendre en charge plusieurs langues. Cela implique deux étapes :

  1. Configuration des paramètres régionaux de l'application

La localisation Laravel prend en charge plusieurs paramètres régionaux. Par défaut, Laravel prend en charge deux paramètres régionaux : anglais (en) et espagnol (es).

Si vous devez ajouter d'autres paramètres régionaux, vous devez apporter des modifications au fichier config/app.php. config/app.php 文件进行更改。

找到 locale 选项,并将其设置为你要添加的语言环境的语言代码。例如,如果你要添加法语,则将 locale 选项设置为 fr

// config/app.php
'locale' => 'fr',

要检查一个语言环境是否可用,则可以执行以下命令:

php artisan tinker
>>> print_r(config('app.available_locales'));
  1. 添加语言文件

现在,你需要添加每种语言的语言文件。在 Laravel Localization 中,每种语言都有一个语言文件。默认情况下,这些文件位于 resources/lang 目录中。

要创建一个新的语言文件,请使用命令:

php artisan make:lang {language_code}

例如,要创建一个新的法语语言文件,请使用以下命令:

php artisan make:lang fr

这将在 resources/lang 目录下创建一个名为 fr 的新目录,其中包含一个名为 messages.php 的语言文件。

接下来,你需要打开这个文件,并添加你要翻译的所有字符串。例如:

<?php
return [
    'welcome' => "Bienvenue sur mon application",
    'title'   => "La page d'accueil",
];

现在,在每个语言目录中添加一个语言文件以创建不同的语言环境。

第三步:在程序中使用 Laravel Localization

现在,你已经配置了应用程序来支持多种语言。接下来,你需要在 PHP 程序中使用 Laravel Localization。

使用 trans 函数可以在 Laravel 中轻松地导航多语言字符串。此函数接受多个参数:需要翻译的字符串以及任何动态参数。

例如,要在视图中输出欢迎消息,你可以这样写:

<h1>{{ trans('messages.welcome') }}</h1>

这将根据选定的语言环境返回适当的字符串。如果选择的语言环境是法语,则导航到 resources/lang/fr/messages.php 中,如果选择的是英语,则导航到 resources/lang/en/messages.php

另一种常用的 Laravel Localization 功能是选择用户的首选语言。这可以通过访问用户的 HTTP 头来实现:

use IlluminateHttpRequest;

public function index(Request $request)
{
    $locale = $request->header('Accept-Language');
    app()->setLocale($locale);

    return view('welcome');
}

这将根据用户的首选语言选择适当的语言环境。

总结

Laravel Localization 提供了一种方便的方法来支持多种语言。通过配置应用程序语言环境并使用 trans

Recherchez l'option locale et définissez-la sur le code de langue des paramètres régionaux que vous souhaitez ajouter. Par exemple, si vous souhaitez ajouter le français, définissez l'option locale sur fr. 🎜rrreee🎜Pour vérifier si une locale est disponible, vous pouvez exécuter la commande suivante : 🎜rrreee
    🎜Ajouter des fichiers de langue🎜🎜🎜Maintenant, vous devez ajouter les fichiers de langue pour chaque langue. Dans la localisation Laravel, chaque langue possède un fichier de langue. Par défaut, ces fichiers se trouvent dans le répertoire resources/lang. 🎜🎜Pour créer un nouveau fichier de langue, utilisez la commande : 🎜rrreee🎜 Par exemple, pour créer un nouveau fichier de langue française, utilisez la commande suivante : 🎜rrreee🎜Ce sera dans le resources/lang répertoire Créez un nouveau répertoire nommé fr contenant un fichier de langue nommé messages.php. 🎜🎜Ensuite, vous devez ouvrir ce fichier et ajouter toutes les chaînes que vous souhaitez traduire. Par exemple : 🎜rrreee🎜Maintenant, ajoutez un fichier de langue dans chaque répertoire de langue pour créer différents paramètres régionaux. 🎜🎜Étape 3 : Utilisez la localisation Laravel dans votre application🎜🎜Maintenant, vous avez configuré votre application pour prendre en charge plusieurs langues. Ensuite, vous devez utiliser la localisation Laravel dans votre programme PHP. 🎜🎜Utilisez la fonction trans pour parcourir facilement les chaînes multilingues dans Laravel. Cette fonction accepte plusieurs paramètres : la chaîne à traduire et les éventuels paramètres dynamiques. 🎜🎜Par exemple, pour afficher un message de bienvenue dans une vue, vous pouvez écrire : 🎜rrreee🎜Cela renverra la chaîne appropriée en fonction des paramètres régionaux sélectionnés. Si les paramètres régionaux sélectionnés sont le français, accédez à resources/lang/fr/messages.php, si les paramètres régionaux sélectionnés sont l'anglais, accédez à resources/lang/en/messages.php . 🎜🎜Une autre fonctionnalité de localisation de Laravel couramment utilisée consiste à sélectionner la langue préférée de l'utilisateur. Ceci peut être réalisé en accédant à l'en-tête HTTP de l'utilisateur : 🎜rrreee🎜 Cela sélectionnera les paramètres régionaux appropriés en fonction de la langue préférée de l'utilisateur. 🎜🎜Résumé🎜🎜La localisation Laravel offre un moyen pratique de prendre en charge plusieurs langues. Vous pouvez facilement prendre en charge différentes langues dans votre application Laravel en configurant les paramètres régionaux de l'application et en utilisant la fonction trans pour accéder aux chaînes multilingues. Cela fait de Laravel Localisation un outil essentiel pour fournir des services de haute qualité aux utilisateurs du monde entier. 🎜

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