✅ WEB- und WordPress-Nachrichten, Themen, Plugins. Hier teilen wir Tipps und beste Website-Lösungen.

Erstellen Sie eine mehrsprachige Website in PHP mit dem Laravel Framework

378

Möchten Sie eine mehrsprachige Website in PHP erstellen? Eine mehrsprachige Website hilft, das Publikum aus mehreren Regionen zu vergrößern. In diesem Artikel untersuchen wir, wie Sie mit dem Laravel Framework eine mehrsprachige Website in PHP erstellen.

Laravel verfügt über eine integrierte Lokalisierungsfunktion. Sprachlokalisierung ist der Prozess der Übersetzung von Inhalten in verschiedene Sprachen. Mit dieser integrierten Funktion von Laravel können wir der Laravel-Website Unterstützung für mehrere Sprachen hinzufügen.

In Laravel können Sie ganz einfach Zeichenfolgen in verschiedenen Sprachen abrufen, wodurch Sie mehrere Sprachen in der Anwendung unterstützen können.

Es gibt zwei Möglichkeiten, wie Sie Übersetzungsstrings in Laravel definieren können – mit kurzen Tasten und mit Übersetzungsstrings als Schlüssel. Schauen wir uns das nacheinander an.

Laravel-Übersetzung mit kurzen Tasten

Um zu beginnen, sollten Sie zunächst die Verzeichnisstrukturen kennen, die für die Übersetzung in Laravel verwendet werden.

Nehmen wir an, Sie müssen die Unterstützung für die Sprache "Deutsch" hinzufügen. Erstellen Sie also ein ‘de’-Verzeichnis unter dem Ordner ‘resources/lang’.

Erstellen Sie eine mehrsprachige Website in PHP mit dem Laravel Framework

Es wird empfohlen, den Ordnernamen gemäß dem Gebiet gemäß ISO-Werten zu verwenden. Sie können hier eine Liste mit Codes für Sprachen abrufen.

Erstellen Sie eine Datei messages.phpim Ordner ‘de’. Diese Datei enthält ein Array von verschlüsselten Zeichenfolgen. Unten ist das Beispiel, in dem wir eine deutsche Übersetzung für das englische Wort ‘Willkommen’ verwenden.

<?php
 
return [
    'welcome' => 'Herzlich willkommen',
];

‘Willkommen’ ist hier ein benutzerdefinierter Schlüssel. Dieser Schlüssel wird verwendet, um Übersetzungsstrings in deutscher Sprache abzurufen. Sie können dieser Datei beliebig viele Schlüssel hinzufügen. Beim Hinzufügen von Schlüsseln sollten Sie eindeutige Schlüssel im Array verwenden. Doppelte Schlüssel führen zu einer falschen Übersetzung.

Der obige Prozess ist einfach, wenn Ihre Website nicht viel Inhalt hat. Wenn Ihre Website jedoch sehr reich an Inhalten ist, wird es schwierig sein, eindeutige Schlüssel zu verwalten. Entscheiden Sie sich in solchen Fällen für die zweite Möglichkeit, Übersetzungszeichenfolgen als Schlüssel zu übergeben.

Verwenden von Übersetzungszeichenfolgen als Schlüssel

Bei diesem Ansatz müssen Sie keinen eindeutigen Schlüssel übergeben. Was Sie tun müssen, ist eine Datei de.jsonim Verzeichnis ‚resources/lang’ zu erstellen. Übergeben Sie als Nächstes in dieser JSON-Datei die Übersetzungszeichenfolge als Schlüssel.

Sie möchten beispielsweise eine deutsche Übersetzung des englischen Satzes ‘How are you?’ de.jsonFügen Sie dann in der Datei das folgende Paar hinzu.

{
    "How are you?": "Wie geht es dir?"
}

Der Schlüssel für die Übersetzungszeichenfolge sollte genau das sein, wofür Sie übersetzen möchten. Dies wird viel einfacher sein, da Sie im Code direkt eine Übersetzungszeichenfolge übergeben müssen.

Legen Sie die Sprache für die Laravel-Website fest

Wenn wir Laravel installieren, ist die Standardsprache ‘en’. Um die Standardsprache zu ändern, öffnen Sie die config/app.phpDatei. Suchen Sie den Schlüssel „locale” und legen Sie den Sprachcode fest. In unserem Fall wird es sein 'locale' => 'de'.

Alternativ können Sie die Sprachlaufzeit über die setLocaleMethode der AppFassade einstellen. Im folgenden Code habe ich die Sprache im Konstruktor festgelegt.

use App;
public function __construct() {
    App::setLocale('de');
}

Übersetzungsstrings abrufen und ersetzen

Um den übersetzten Text aus Sprachdateien zu erhalten, hat Laravel eine Hilfsmethode bereitgestellt ”. Im folgenden Code rufe ich Übersetzungszeichenfolgen sowohl aus messages.phpals auch de.jsonin der Blade-Datei ab.

{{ __('messages.welcome') }} //Output, Herzlich willkommen
 
{{ __('How are you?') }} //Output, Wie geht es dir?

Im Controller können Sie den Übersetzungsstring mit der echoFunktion abrufen.

echo __('messages.welcome');
echo __('How are you?');

Platzhalter in Übersetzungszeichenfolgen

Laravel untersucht auch Übersetzungsfunktionen, bei denen Sie Platzhalter in den Übersetzungszeichenfolgen übergeben können.

'welcome' => 'Welcome, :name',

Oder in de.josnDatei,

{
    "How are you?": "Wie geht es dir, :name?"
}

Um Platzhalter in der Anwendung zu ersetzen, müssen wir wie folgt Code schreiben.

{{ __('messages.welcome', ['name' => 'John']) }}
 
{{ __('How are you?', ['name' => 'John']) }}

Wenn wir einen Platzhalter als ‘:NAME’ schreiben, wäre die Ausgabe ‘JOHN’ und für ‘:Name’ ist die Ausgabe ‘John’.

Ich hoffe, Sie verstehen, wie Sie mit dem Laravel-Framework eine mehrsprachige Website in PHP erstellen. Bitte teilen Sie Ihre Gedanken und Vorschläge im Kommentarbereich unten mit.

Zum Thema passende Artikel

Aufnahmequelle: artisansweb.net

Diese Website verwendet Cookies, um Ihre Erfahrung zu verbessern. Wir gehen davon aus, dass Sie damit einverstanden sind, Sie können sich jedoch abmelden, wenn Sie möchten. Annehmen Weiterlesen