✅ WEB- och WordPress -nyheter, teman, plugins. Här delar vi tips och bästa webbplatslösningar.

Skapa flerspråkig webbplats i PHP med hjälp av Laravel Framework

45

Vill du skapa en flerspråkig webbplats i PHP? En webbplats med flera språk hjälper till att öka publiken från flera regioner. I den här artikeln studerar vi hur man bygger en flerspråkig webbplats i PHP med hjälp av Laravel Framework.

Laravel har en inbyggd funktion i lokalisering. Språklokalisering är processen att översätta innehåll till olika språk. Med den här inbyggda funktionen i Laravel kan vi lägga till stöd för flerspråk på Laravels webbplats.

I Laravel kan du enkelt hämta strängar på olika språk, genom vilka du kan ge stöd till flera språk i applikationen.

Det finns två sätt att definiera översättningssträngar i Laravel – genom att använda korta tangenter och använda översättningssträngar som nycklar. Låt oss ta en titt på det en efter en.

Laravel-översättning med korta tangenter

För att komma igång bör du först känna till de katalogstrukturer som används för översättning i Laravel.

Låt oss säga att du måste lägga till stöd för det "tyska" språket. Så skapa en ‘de’ -katalog under mappen ‘resources / lang’.

Skapa flerspråkig webbplats i PHP med hjälp av Laravel Framework

Det rekommenderas att använda mappnamn enligt territoriet enligt ISO-värden. Du kan få en lista med koder för språk här.

Skapa en fil messages.phpunder "de" -mappen. Den här filen innehåller en rad tangenterade strängar. Nedan följer exemplet där vi använder tysk översättning för det engelska ordet "välkommen".

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

Här är ‘välkommen’ en användardefinierad nyckel. Den här nyckeln används för att hämta översättningssträngar på tyska. Du kan lägga till så många nycklar i den här filen. När du lägger till nycklar bör du använda unika nycklar i matrisen. Dubbla nycklar resulterar i en felaktig översättning.

Ovanstående process är lätt om din webbplats inte har mycket innehåll. Men om din webbplats är ganska innehållsrik är det svårt att hantera unika nycklar. I sådana fall, gå till det andra alternativet att skicka översättningssträngar som nycklar.

Använda översättningssträngar som nycklar

I detta tillvägagångssätt behöver du inte skicka en unik nyckel. Vad du behöver göra är att skapa en fil de.jsoni katalogen ‘resurser / lång’. Därefter skickar du översättningssträngen som nycklar i den här JSON-filen.

Till exempel vill du ha en tysk översättning av den engelska meningen ‘Hur mår du?’ de.jsonlägg sedan till nedanstående par i fil.

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

Översättningssträngnyckeln ska vara exakt vad du vill översätta för. Detta kommer att bli mycket enklare eftersom du i koden måste skicka en översättningssträng direkt.

Ställ in språk för Laravels webbplats

När vi installerar Laravel är standardspråkuppsättningen ‘en’. För att ändra standardspråk, öppna config/app.phpfilen. Hitta nyckeln "locale" och ställ in språkkoden. I vårt fall kommer det att vara 'locale' => 'de'.

Alternativt kan du ställa in språktid med hjälp setLocaleav Appfasadmetoden. I koden nedan ställer jag in språket i konstruktören.

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

Skaffa översättningssträngar och byt ut den

För att få den översatta texten från språkfiler tillhandahöll Laravel en hjälparmetod ”. I koden nedan hämtar jag översättningssträngar från både messages.phpoch de.jsoni bladfilen.

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

I styrenheten kan du hämta översättningssträngen med echofunktionen.

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

Platshållare i översättningssträngar

Laravel utforskar också översättningsfunktioner där du kan skicka platshållare i översättningssträngarna.

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

Eller i de.josnarkiv,

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

För att ersätta platshållare i applikationen måste vi skriva kod enligt följande.

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

Om vi ​​skriver en platshållare som ‘: NAME’ skulle utmatningen vara ‘JOHN’ och för ‘: Name’ är output ‘John’.

Jag hoppas att du förstår hur du skapar en flerspråkig webbplats i PHP med Laravel-ramverket. Dela dina tankar och förslag i kommentarsektionen nedan.

relaterade artiklar

Inspelningskälla: artisansweb.net

Denna webbplats använder cookies för att förbättra din upplevelse. Vi antar att du är ok med detta, men du kan välja bort det om du vill. Jag accepterar Fler detaljer