Inhaltsverzeichnis
1. Setzen Sie Sprachdateien ein
2. Konfigurieren Sie die Standard- und unterstützten Sprachen
3.. Sprachen dynamisch wechseln
4. Verwenden Sie sprachspezifische Routen und URLs
5. Übersetzungen in Ansichten und Controllern behandeln
6. Verwenden Sie Artisan, um Übersetzungen zu verwalten (optional)
7. Cache -Übersetzungen in der Produktion
Heim PHP-Framework Laravel So verwenden Sie Lokalisierung, um mehrsprachige Apps in Laravel zu erstellen

So verwenden Sie Lokalisierung, um mehrsprachige Apps in Laravel zu erstellen

Sep 02, 2025 am 04:54 AM

Erstellen von Verzeichnissen wie Ressourcen/Lang/EN und Ressourcen/Lang/ES und definieren Sie die Sprachdateien von messus.php; 2. Setzen Sie das Standard -Sprachgebiet und die alternative Sprache fallback_locale in config/app.php; 3. Verwenden Sie App :: setLocale (), um die Sprachen dynamisch zu wechseln, und kombinieren Sie Middleware, um sie automatisch gemäß Sitzung oder Anforderungsheadern einzustellen. 4. Fügen Sie {Locale} Präfix zum Routenpaket hinzu, um mehrsprachige URLs zu implementieren, und generieren Sie lokalisierte Links in Vorlagen. 5. Verwenden Sie die Funktion __ () oder @lang, um Übersetzungen in Controllern und Ansichten aufzurufen und die Pluralform über trans_choice zu unterstützen. 6. Verwenden Sie optional das Artisan-Befehl oder das Paket von Drittanbietern, um die Übersetzung zu verwalten. 7. In Produktionsumgebungen kann die Leistung durch Cache -Konfiguration verbessert werden. Durch die angemessene Organisation von Sprachdateien, die frühzeitige Erkennung von Benutzersprachenpräferenzen und die Bereitstellung von Schaltmechanismen, das Kombinieren von Middleware und Routing -Paketen können ein klares mehrsprachiges Anwendungserlebnis erstellt werden.

So verwenden Sie Lokalisierung, um mehrsprachige Apps in Laravel zu erstellen

Das Erstellen von Apps in Laravel mit mehrsprachigen Apps ist unkompliziert, wenn Sie die integrierten Lokalisierungsfunktionen von Laravel verwenden. Mit der ordnungsgemäßen Lokalisierungs -Setup können Sie Inhalte in mehreren Sprachen basierend auf Benutzereinstellungen oder Systemeinstellungen bedienen. Hier erfahren Sie, wie die Lokalisierung in Laravel effektiv verwendet wird, um mehrsprachige Anwendungen zu erstellen.


1. Setzen Sie Sprachdateien ein

Laravel speichert Sprachzeichenfolgen im resources/lang -Verzeichnis. Jede Sprache hat ein eigenes Unterverzeichnis (z. B. en , es , fr ). Erstellen Sie diese Ordner und definieren Sie Sprachdateien als PHP -Arrays.

Zum Beispiel:

 /Ressourcen
    /lang
        /en
            messus.php
        /es
            messus.php

In /resources/lang/en/messages.php :

 <? Php

Zurückkehren [
    &#39;Willkommen&#39; => &#39;Willkommen zu unserer Bewerbung&#39;, &#39;
    &#39;Profil&#39; => &#39;Benutzerprofil&#39;,
];

In /resources/lang/es/messages.php :

 <? Php

Zurückkehren [
    &#39;Willkommen&#39; => &#39;Bienvenido A Nuestra Aplicación&#39;,
    &#39;Profil&#39; => &#39;Perfil de Usuario&#39;,
];

Sie können jetzt mit dem __() Helfer oder der @lang Blade -Richtlinie auf diese Zeichenfolgen zugreifen.

 echo __ (&#39;messus.welcome&#39;); // Ausgänge: Willkommen in unserer Anwendung

In Blade:

 <h1> @lang (&#39;messus.welcome&#39;) </h1>

2. Konfigurieren Sie die Standard- und unterstützten Sprachen

Setzen Sie in config/app.php Ihr ​​Standardgebietsschema:

 &#39;Locale&#39; => &#39;en&#39;,
&#39;Fallback_locale&#39; => &#39;en&#39;,

Sie können zusätzliche Sprachen unterstützen, indem Sie einfach mehr Sprachverzeichnisse unter resources/lang hinzufügen.

Um dynamisches Schalten zu ermöglichen, müssen Sie die bevorzugte Sprache des Benutzers speichern oder erkennen. Gemeinsame Ansätze sind:

  • URL -Segmente (z. B. /es/dashboard )
  • Sitzungsbasierte Präferenz
  • Einstellung des Benutzerprofils
  • Browser Akzeptieren Sie die Sprache-Header

3.. Sprachen dynamisch wechseln

Um die App -Sprache zur Laufzeit zu ändern, verwenden Sie die App::setLocale() -Methode.

Zum Beispiel in einer Middleware oder einem Controller:

 Verwenden Sie Illuminate \ Support \ facades \ App;

Route :: get (&#39;/Sprache/{Locale}&#39;, Funktion ($ locale) {
    if (in_array ($ locale, [&#39;en&#39;, &#39;es&#39;, &#39;fr&#39;])) {
        app ()-> setLocale ($ locale);
        Session ()-> put (&#39;Locale&#39;, $ Locale);
    }

    return reutirect ()-> zurück ();
});

Sie können auch eine Middleware erstellen, um das Gebietsschema auf jeder Anfrage festzulegen:

 // app/http/Middleware/setlocale.php

Klasse setlocale
{
    öffentliche Funktion Handle ($ Anfrage, $ Weitere)
    {
        $ locale = session (&#39;locale&#39;) ?? $ request-> getPreferredLanguage ([&#39;en&#39;, &#39;es&#39;, &#39;fr&#39;]);

        app ()-> setLocale ($ locale);

        Rückgabe $ als nächstes ($ request);
    }
}

Registrieren Sie die Middleware in app/Http/Kernel.php unter web .


4. Verwenden Sie sprachspezifische Routen und URLs

Um die Sprache in URLs einzubeziehen, Gruppenrouten mit einem Präfix des Gebietsschemas:

 Route :: Group ([&#39;Präfix&#39; => &#39;{Locale}&#39;, &#39;Middleware&#39; => &#39;setLocale&#39;], function () {
    Route :: get (&#39;/Dashboard&#39;, [DashboardController :: class, &#39;index&#39;]);
    Route :: get (&#39;/profil&#39;, [profileController :: class, &#39;show&#39;]);
});

Erzeugen Sie in Ihren Klingenvorlagen lokalisierte URLs:

 <a href = "{{{Route (&#39;Dashboard&#39;, [&#39;Locale&#39; => &#39;ES&#39;])}}}"> Ir al Panel </a>

Stellen Sie sicher, dass Sie den Parameter {locale} in Ihren Controllern behandeln, oder verwenden Sie einen Basicontroller, um es zu verwalten.


5. Übersetzungen in Ansichten und Controllern behandeln

Verwenden Sie die Funktion __() überall in Ihrem Code:

 // in einem Controller
Rückkehr anzeigen (&#39;Dashboard&#39;, [
    &#39;title&#39; => __ (&#39;message.profile&#39;)
]);

// in Validierungsnachrichten
$ validated = $ request-> validate ([
    &#39;E -Mail&#39; => &#39;Erforderlich | E -Mail&#39; &#39;
], [
    &#39;E -Mail.Required&#39; => __ (&#39;validation.email_required&#39;)
]);

Für die Pluralisierung unterstützt Laravel es über Sprachdateien:

 // Ressourcen/Lang/en/messages.php
&#39;Kommentare&#39; => &#39;{0} Keine Kommentare | {1} Ein Kommentar | [2,*]: count Kommentare&#39;,

// Verwendung
echo trans_choice (&#39;messus.comments&#39;, $ count);

6. Verwenden Sie Artisan, um Übersetzungen zu verwalten (optional)

Laravel enthält keinen integrierten Übersetzungsmanager, aber Sie können Befehle erstellen oder Pakete wie laravel-lang/lang oder astrotomic/laravel-translatable für fortgeschrittene Anforderungen verwenden.

Für einfache Apps reicht die manuelle Verwaltung von Sprachdateien aus.


7. Cache -Übersetzungen in der Produktion

In der Produktion können Sie Ihre Sprachdateien für eine bessere Leistung zwischenspeichern:

 PHP Artisan Config: Cache

Hinweis: Übersetzungsdateien werden standardmäßig nicht zwischengespeichert, aber Sie können bei Bedarf Pakete verwenden oder eine benutzerdefinierte Lösung erstellen.


Durch die Verwendung von Laravel -Lokalisierungssystemen können Sie mehrere Sprachen leicht unterstützen. Konzentrieren Sie sich darauf, Sprachdateien klar zu organisieren, die Benutzersprache frühzeitig zu erkennen und eine Möglichkeit zum Wechseln der Sprachen zu bieten. Mit Middleware und Routengruppierung können Sie ein sauberes, lokalisiertes Benutzererlebnis erstellen.

Grundsätzlich ist es nicht komplex - nur eine konsistente Dateistruktur und Smart -Lokalschema -Umschaltungen.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Lokalisierung, um mehrsprachige Apps in Laravel zu erstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Stock Market GPT

Stock Market GPT

KI-gestützte Anlageforschung für intelligentere Entscheidungen

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie man in Laravel eloquent verwendet Wie man in Laravel eloquent verwendet Aug 21, 2025 pm 02:30 PM

Modelle erstellen und Migration: Verwenden Sie PhPartisanMake: ModellPost-M, um Modelle und Migrationsdateien zu generieren, die Tabellenstruktur zu definieren und PhPartisanmigrate auszuführen. 2. Grundlegende CRUD -Operationen: Verwenden Sie Post :: All (), Find (), Create (), Save () und Delete (), um Daten abzufragen, zu erstellen, zu aktualisieren und zu löschen. 3. Verwenden Sie die eloquente Assoziation: Definieren Sie die Beziehungen zwischen Hörbol und Hasmany im Modell und verwenden Sie die Methode mit (), um die zugehörigen Daten vorzuladen, um N 1 -Abfrageprobleme zu vermeiden. V.

So erstellen Sie eine Sitemap für eine Laravel -Anwendung So erstellen Sie eine Sitemap für eine Laravel -Anwendung Aug 20, 2025 am 09:16 AM

InstallThespatie/Laravel-sideemAppackageveringCompoSerandPublishitsConFigFileIfNeed.2.CreatearoutetogenerateAndServethesitemapdyNamical, entweder bywritingItoFileoroutputingxmldirect.3.CustomizethesitemapbyaddingDatherDdynamicurls

Wie man mit polymorphen Beziehungen in Laravel arbeitet Wie man mit polymorphen Beziehungen in Laravel arbeitet Aug 25, 2025 am 10:56 AM

PolymorphicrelationshipSinlaravelallowamodellikeCompomentorimagetobelongTomultiplemodelsSuchaspost, Video, Ouserusingasinglease.2.DedatabaseSchemarequires {relation} _idandandcomputerable_typecolumns, exemplifictifydyTableable_idandcompommentable_typecoloNs, Exemplifictable, exemplifictabledy und entfaltet

So verwenden Sie Lokalisierung, um mehrsprachige Apps in Laravel zu erstellen So verwenden Sie Lokalisierung, um mehrsprachige Apps in Laravel zu erstellen Sep 02, 2025 am 04:54 AM

Erstellen von Verzeichnissen wie Ressourcen/Lang/EN und Ressourcen/Lang/ES und definieren Sie die Sprachdateien von messus.php; 2. Setzen Sie das Standard -Sprachgebiet und die alternative Sprache fallback_locale in config/app.php; 3. Verwenden Sie App :: setLocale (), um die Sprachen dynamisch zu wechseln und Middleware zu kombinieren, um sie automatisch gemäß Sitzung oder Anforderungsheadern einzustellen. 4. Fügen Sie {Locale} Präfix hinzu, um mehrsprachige URLs über Routing -Pakete zu implementieren und lokalisierte Links in Vorlagen zu generieren. 5. Verwenden Sie die Funktion __ () oder @lang, um Übersetzungen in Controllern und Ansichten aufzurufen und die Pluralform Viutrans_Choice zu unterstützen

Wie man ein Benachrichtigungssystem mit Laravel erstellt Wie man ein Benachrichtigungssystem mit Laravel erstellt Sep 01, 2025 am 08:15 AM

RunPhPartisannotifikationen: Table und MigrateToSetupthatabase.2.CreateanotificationClassuSuSuSuSusedPhPartisanMake: NotificationNewMessaneeCeived und DefineChannelstheviamethod, Dataintodatabase, ANDREAL-TIMEBROADCASTINGININGOBOBOADCAST.Sendnotificationsvia $

So verwenden Sie die Aufgabenplanung von Laravel So verwenden Sie die Aufgabenplanung von Laravel Aug 31, 2025 am 06:07 AM

Mit Laravels TaskScheduling-System können Sie Timing-Aufgaben über PHP definieren und verwalten, ohne den Server-Crontab manuell zu bearbeiten, nur eine Cron-Aufgabe hinzuzufügen, die dem Server einmal pro Minute ausgeführt wird: *CD/Path-to-Your-Project && PhPartiSeSule: Run >>/Dev/Dev/null2> & 1 und dann werden alle Tasks konfiguriert. 1. Definieren von Aufgaben können Befehls-, Anruf- oder Exec-Methoden verwenden, z. B. $ plan-

Wie man eine Laravel -Anwendung internationalisiert Wie man eine Laravel -Anwendung internationalisiert Aug 22, 2025 pm 02:31 PM

Sprachdateien erstellen: Erstellen Sie Subdirektorien für jede Sprache (z. B. en, es) im Ressourcen-/Lang -Verzeichnis und fügen Sie Message.php -Datei hinzu, oder verwenden Sie die JSON -Datei, um die Übersetzung zu speichern. 2. Setzen Sie die Anwendungssprache: Lesen Sie den Anforderungsheader Akzeptieren Sie die Sprache über Middleware oder erkennen Sie die Sprache über das URL-Präfix, setzen Sie die aktuelle Sprache mit app ()-> setlocale () und registrieren Sie die Middleware in kernel.php. 3.. Verwenden Sie Übersetzungsfunktionen: Verwenden Sie __ (), trans () oder @lang in der Ansicht und verwenden Sie __ (), das Fallback unterstützt; 4. Supportparameter und Plural: Verwenden Sie Platzhalter in Übersetzungszeichenfolgen wie: n

So erstellen Sie ein soziales Netzwerk mit Laravel So erstellen Sie ein soziales Netzwerk mit Laravel Sep 01, 2025 am 06:39 AM

Ja, youcancreateasocialNetworkwithlaravelByFollowingthesSteps: 1.SetUplaravelusedComposer, configurethe.envFile, EnableAuthenticationViabreeze/Jetstream/Verstärkung, AndrunMigrationsforSerManmanagement

See all articles