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.
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
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' ];
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.
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
Cela créera deux répertoires de langue, un pour l'anglais et un pour le chinois.
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" => "联系我们" ];
<h1>{{ trans('messages.welcome') }}</h1>Ici, la fonction trans renverra la chaîne localisée correspondante en fonction des paramètres régionaux actuels.
<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>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(); });Cela mettra à jour les options de langue dans la session en cours et redirigera vers la page précédente . ConclusionL'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!