Maison > cadre php > Laravel > Développement Laravel : Comment utiliser la localisation Laravel pour obtenir un support multilingue ?

Développement Laravel : Comment utiliser la localisation Laravel pour obtenir un support multilingue ?

王林
Libérer: 2023-06-13 10:27:04
original
1692 Les gens l'ont consulté

Avec la tendance à la mondialisation, de plus en plus de sites Web et d'applications doivent prendre en charge plusieurs langues. Dans le développement de sites Web traditionnels, il est généralement nécessaire de créer manuellement des pages dans plusieurs langues, ce qui est non seulement long et laborieux, mais également sujet aux erreurs. Avec le développement des technologies de développement modernes, il est devenu courant d'utiliser des frameworks et des outils pour simplifier la prise en charge multilingue.

Dans le développement de Laravel, la localisation de Laravel est un moyen populaire d'obtenir une prise en charge multilingue. Cet article explique comment utiliser la localisation de Laravel pour implémenter la prise en charge multilingue dans les applications Laravel.

  1. Installation et configuration

Tout d'abord, vous devez installer le composant de localisation de Laravel. Vous pouvez utiliser composer pour installer :

composer require "laravelcollective/html":"^5.8.0"
php artisan vendor:publish --tag=laravel-errors --force
Copier après la connexion

Ensuite, vous devez créer un nouveau fichier locale.php sous app/config pour configurer les options de langue prises en charge :

return [
    'locales' => ['en' => 'English', 'zh' => '中文'],
    'default_locale' => 'en'
];
Copier après la connexion

Ici, locales Le tableau contient les options de langue prises en charge, où la clé de chaque élément est le code de langue et la valeur est le nom de la langue. default_locale spécifie l'option de langue par défaut.

  1. Créer des ressources multilingues

Ensuite, vous devez créer les fichiers de ressources linguistiques correspondants pour chaque langue prise en charge. Un fichier de ressources de langue contient généralement un tableau contenant toutes les chaînes localisées utilisées dans ces paramètres régionaux. Ces fichiers peuvent être rapidement créés à l'aide de la commande artisan, comme indiqué ci-dessous :

php artisan make:lang en
php artisan make:lang zh
Copier après la connexion

Cela créera deux répertoires de langue, un pour l'anglais et un pour le chinois.

  1. Modifier les ressources multilingues

Modifiez le fichier de ressources linguistiques pour chaque langue pour ajouter des chaînes localisées spécifiques à cette langue dans le tableau. Par exemple, dans les fichiers en.php et zh.php, vous pouvez ajouter ce qui suit :

// en.php
return [
    "welcome" => "Welcome to our site",
    "about" => "About Us",
    "contact" => "Contact Us"
];

// zh.php
return [
    "welcome" => "欢迎访问我们的网站",
    "about" => "关于我们",
    "contact" => "联系我们"
];
Copier après la connexion
  1. Utiliser des chaînes localisées dans les vues
#🎜🎜 # Lorsque la vue doit contenir des chaînes localisées, vous pouvez utiliser la fonction trans fournie dans Laravel Localization. La fonction trans accepte une clé de chaîne localisée et renvoie la chaîne localisée correspondante. Par exemple, dans un modèle de lame, vous pouvez utiliser la fonction trans comme ceci :

<h1>{{ trans('messages.welcome') }}</h1>
Copier après la connexion

Ici, la fonction trans renverra la chaîne localisée correspondante en fonction des paramètres régionaux actuels.

    Changer d'option de langue
Enfin, la fonction de changement d'option de langue peut également être fournie dans l'application. Vous pouvez créer une zone déroulante dans la vue pour basculer l'option de langue et utiliser JavaScript pour soumettre le formulaire afin que l'option de langue sélectionnée soit enregistrée dans la session Laravel.

<form id="locale-form" method="POST" action="{{ url('locale') }}">
    {{ csrf_field() }}
    <select name="locale" onchange="document.querySelector('#locale-form').submit();">
        @foreach (Config::get('locale.locales') as $key => $value)
            <option value="{{ $key }}" {{ ($key === App::getLocale()) ? ' selected' : '' }}>{{ $value }}</option>
        @endforeach
    </select>
</form>
Copier après la connexion

Ajoutez le code suivant à votre itinéraire pour gérer les demandes du formulaire d'options de langue :

Route::post('locale', function(Request $request) {
    App::setLocale($request->locale);
    return redirect()->back();
});
Copier après la connexion
Cela mettra à jour les options de langue dans la session en cours et redirigera vers la page précédente .

Conclusion

L'utilisation de Laravel Localization vise à simplifier la prise en charge multilingue pour localiser facilement tous les éléments de page dans les applications Laravel. Les étapes présentées dans cet article peuvent être utilisées comme point de départ pour implémenter la prise en charge multilingue dans votre application Laravel. Dans le processus réel, des ajustements et une personnalisation appropriés peuvent également être effectués en fonction des besoins de l'application.

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