Maison  >  Article  >  cadre php  >  Internationalisation et localisation de Laravel : parvenir à une adaptation multilingue et régionale

Internationalisation et localisation de Laravel : parvenir à une adaptation multilingue et régionale

WBOY
WBOYoriginal
2023-08-25 22:43:451128parcourir

Internationalisation et localisation de Laravel : parvenir à une adaptation multilingue et régionale

Internationalisation et localisation de Laravel : réaliser une adaptation multilingue et régionale

Aperçu :
Lors du développement d'une application pour des utilisateurs mondiaux, il est très important de réaliser une adaptation multilingue et régionale. Laravel fournit de nombreuses fonctionnalités pour aider les développeurs à mettre en œuvre facilement l'internationalisation et la localisation.

  1. Configurer les informations sur la langue et la région :
    Dans Laravel, vous devez d'abord configurer les informations sur la langue et la région prises en charge. Dans le fichier de configuration config/app.php, recherchez les options « app.locale » et « app.fallback_locale » pour définir respectivement la langue par défaut et la langue alternative de l'application.

Exemple de code :

// config/app.php

return [
    // ...
    'locale' => 'en',
    'fallback_locale' => 'en',
    // ...
];

Dans cet exemple, nous définissons la langue par défaut sur l'anglais et définissons également la langue alternative sur l'anglais. Si aucune traduction n'est trouvée pour une langue spécifique, l'application utilisera une autre langue.

  1. Créer des fichiers de langue :
    Ensuite, nous devons créer des fichiers de langue pour stocker le texte traduit pour chaque langue. Créez un dossier nommé d'après l'abréviation de la langue dans le répertoire resources/lang, puis créez un fichier avec l'extension php dans le dossier.

Exemple de code :

// resources/lang/en/messages.php

return [
    'welcome' => 'Welcome to our application',
    'hello' => 'Hello :name',
    // ...
];

Dans cet exemple, nous avons défini deux textes de traduction dans le fichier messages.php, à savoir "bienvenue" et "bonjour". Vous pouvez ajouter plus de texte si nécessaire.

  1. Utiliser le texte traduit :
    Dans les fichiers d'affichage, les contrôleurs ou partout où le texte traduit doit être utilisé, nous pouvons utiliser la fonction __() fournie par Laravel pour obtenir le texte traduit. __()函数来获取翻译后的文本。

示例代码:

// 在视图文件中
<h1>{{ __('messages.welcome') }}</h1>

// 在控制器中
public function index()
{
    $welcome = __('messages.welcome');
    // ...
}

在这个示例中,我们使用__('messages.welcome')获取了'welcome'翻译文本,并在视图文件中显示。

  1. 设置不同的地区:
    除了支持不同的语言外,Laravel还支持根据地区来进行适配。在语言文件夹下,可以为每个语言创建一个以地区为后缀的子文件夹,并在子文件夹中创建一个以php为扩展名的文件。

示例代码:

// resources/lang/en/GB/messages.php

return [
    'welcome' => 'Welcome to our application in UK',
    // ...
];

// resources/lang/en/US/messages.php

return [
    'welcome' => 'Welcome to our application in US',
    // ...
];

在这个示例中,我们在en文件夹下创建了两个地区的语言文件,分别是GB和US。分别存储了不同地区的翻译文本。

  1. 根据地区和语言进行适配:
    在代码中,可以使用app()->getLocale()函数获取当前的语言和地区信息,并根据这些信息来加载对应的语言文件。

示例代码:

public function index()
{
    $locale = app()->getLocale();

    if ($locale === 'en') {
        $welcome = __('messages.welcome');
    } else {
        $welcome = __('messages.welcome', [], $locale);
    }

    // ...
}

在这个示例中,我们首先获取当前的语言和地区信息,并根据不同的语言来选择不同的翻译文本。如果是英语,就直接使用__('messages.welcome')获取文本;如果是其他语言,可以通过传递语言参数$locale

Exemple de code :
rrreee

Dans cet exemple, nous utilisons __('messages.welcome') pour obtenir le texte de traduction « bienvenue » et l'afficher dans le fichier de vue. 🎜
    🎜Définir différentes régions : 🎜En plus de prendre en charge différentes langues, Laravel prend également en charge l'adaptation basée sur la région. Sous le dossier de langue, vous pouvez créer un sous-dossier pour chaque langue avec la région comme suffixe et créer un fichier avec l'extension php dans le sous-dossier. 🎜🎜🎜Exemple de code : 🎜rrreee🎜Dans cet exemple, nous avons créé des fichiers de langue pour deux régions sous le dossier en, à savoir GB et US. Les textes traduits pour différentes régions sont stockés séparément. 🎜
      🎜Adapter selon la région et la langue : 🎜Dans le code, vous pouvez utiliser la fonction app()->getLocale() pour obtenir la langue et la région actuelles informations, et chargez le fichier de langue correspondant en fonction de ces informations. 🎜🎜🎜Exemple de code : 🎜rrreee🎜Dans cet exemple, nous obtenons d'abord les informations actuelles sur la langue et la région, puis sélectionnons différents textes de traduction en fonction des différentes langues. S'il s'agit de l'anglais, utilisez simplement __('messages.welcome') pour obtenir le texte ; s'il s'agit d'autres langues, vous pouvez obtenir la traduction correspondante en passant le paramètre de langue $locale<.>. 🎜🎜Résumé : 🎜Grâce aux capacités d'adaptation multilingues et régionales de Laravel, les développeurs peuvent facilement implémenter des applications mondiales. Configurer les informations sur la langue et la région, créer des fichiers de langue, utiliser les fonctions de traduction et adapter en fonction de la région et de la langue sont toutes des opérations très simples. Cela permet aux applications d'offrir une meilleure expérience utilisateur en fonction de la langue et de la région de l'utilisateur, et d'être plus facilement acceptées par les 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