Laravel är det mest populära PHP-ramverket, med mer än 1,2 miljoner webbplatser byggda på det. Sedan lanseringen i juni 2011 har Laravel uppmärksammats av många webbutvecklare och presenterat sig som det mest använda PHP-ramverket.

Laravel erbjuder en snabb utvecklingsmiljö, säkerhet och bra utvecklarguider. Laravel har skapats och underhållits av skaparen Taylor Otwell och har fortsatt att förbättra sin programvara. Den följer ett semantiskt versioneringsschema och finns för närvarande i version 8.x.

Här är åtta nya funktioner att se upp för i Laravel 8.

1. Laravel Jetstream

Detta är den nya applikationsställningen i Laravel. Den levereras med out of the box-funktioner som sessionsspårning, inloggning, registrering, e-postverifiering, tvåfaktorautentisering och valfri teamhantering.

Jetstream erbjuder valet av två ställningsalternativ: Livewire och Tröghet.

Livewire är ett lyhörd och dynamiskt bibliotek som erbjuder möjligheten att undvika att använda en JavaScript-ramverk såsom Vue.js. Den använder standardspråk för bladmallar. Livewire erbjuder också flexibiliteten att välja mellan att lämna Blade eller använda Vue.js.

Tröghet använder Vue.js som sitt mallspråk.

Läs mer: Vad är Vue.js?

Det ger full kraft från Vue.js utan behov av routing på klientsidan. Om Vue är ditt föredragna mallningsspråk är tröghetsstacken ett bra val.

2. Migration Squashing

När du utvecklar din applikation kan dina migreringar byggas upp. Du kan "squasha" dem i en enda SQL-fil för att undvika att klämma. Det här alternativet är tillgängligt för MySQL- eller PostgreSQL-användare.

Laravel skapar en schemafil när kommandot schema: dumpa utförs. När du försöker migrera din databas migrerar Laravel först SQL-filen som är kopplad till ditt schema. Därefter, om det finns några migreringar som inte var en del av schemat, kommer de att köras.

3. Tailwind CSS

Laravel använder nu Tailwind CSS-ramverket som standardpaginator. Tailwind är ett CSS-verktygs-första bibliotek som tillhandahåller CSS-klasser för engångsbruk. Det ger fördelen att ha din stylinginformation på ett ställe snarare än att ha den spridd. Du kan tillämpa fördefinierade klasser direkt i ditt HTML-dokument.

Tailwind erbjuder också möjligheten att bygga lyhörd design. Det erbjuder ett mobilt första system som liknar Bootstrap. Detta innebär att oprefixerade verktyg svarar på alla skärmstorlekar medan prefixade verktyg träder i kraft vid vissa punkter.

Tailwind har också ett just-in time-läge aktiverat för att få dina stilar genererade på begäran snarare än att ha allt renderat vid den första byggtiden. Detta gör det snabbare än att använda vanlig CSS. En annan fördel som detta erbjuder är att du inte behöver bli av med dina oanvända produktionsstilar, vilket ger dig möjlighet att använda din kod i flera miljöer.

Det är också intressant att notera att Laravel Jetstream byggdes med Tailwind.

4. Jobbbatching

Du kan använda den här funktionen för att köra ett antal jobb vid en viss tidpunkt och utföra en viss åtgärd (ar) när deras körning är klar. De Bussfasad ger en batchmetod som gör att du kan skicka jobb.

Du kan utföra detta i kombination med andra kompletterande återuppringningar som fånga, sedan och till sist för att lägga till funktionalitet i dina jobb.

använd App \ Jobs \ ProcessPodcast;
använd App \ Podcast;
använd Illuminate \ Bus \ Batch;
använd Illuminate \ Support \ Facades \ Bus;
använd Throwable;
$ batch = Buss:: batch ([
ny ProcessPodcast (Podcast:: hitta (1)),
ny ProcessPodcast (Podcast:: hitta (2)),
ny ProcessPodcast (Podcast:: hitta (3)),
ny ProcessPodcast (Podcast:: hitta (4)),
ny ProcessPodcast (Podcast:: hitta (5)),
]) -> sedan (funktion (batch $ batch) {
// Alla jobb har slutförts framgångsrikt ...
}) -> fångst (funktion (Batch $ batch, Throwable $ e) {
// Första batchjobb misslyckades ...
}) -> slutligen (funktion (batch $ batch) {
// Partiet har slutförts ...
}) -> leverans ();
returnera $ batch-> id;

För att komma igång måste du skapa en migreringstabell som innehåller jobbmetadata, t.ex. slutförandegraden. Använd kommandot php artisan queue: batches-table att göra detta. Och då php artisan migrate för att migrera dem. Du kan nu definiera dina batchbara jobb och sedan skicka sedan när du är klar.

5. Modell fabriksklasser

Låt oss först diskutera modellfabriker. Dessa används för att sådd dina databaser med testdata. Denna falska data är viktig för teständamål innan någon riktig användardata infogas.

I Laravel 8 har de tidigare Eloquent-modellerna helt ersatts med klassbaserade fabriker. Med detta kan du nu hantera objekttillstånd genom att helt enkelt använda metoder. Dessa metoder kallar vanligtvis stat() metod, som ges i Laravels basfabriksklass. De stat() metoden tar in som ett argument en funktion som tar in en rad attribut som tilldelats fabriken.

6. Förbättrat underhåll

Tidigare innehöll Laravel en tillåtningslista över IP-adresser som du kan använda för att komma åt applikationen i underhållsläge. Detta har tagits bort och ersatts med en enklare "hemlig" lösning. Du kan ange bypass-token med hjälp av hemlighet alternativ.

I underhållsläge kan du komma åt din applikations-URL och Laravel kommer automatiskt att vidarebefordra cookien till din webbläsare. När kakan har utfärdats kommer du normalt till applikationen som om den inte var i underhållsläge.

Dina användare kan stöta på fel om du använder PHP hantverkare ner under utplaceringen. För att undvika detta erbjuder Laravel möjligheten att återge en underhållslägesvy som returneras när en begäran görs. Du kan göra en mall i förväg genom att använda renderingsalternativet på kommandot ner.

7. Time Testing Hjälpare

Laravel inkluderar nu möjligheten att göra det möjligt för dig att manipulera aktuell tid. Du har möjlighet att använda dina tidsattribut som millisekunder, timmar, dagar och så vidare.

public function testTimeCanBeManipulated ()
{
// Resa in i framtiden ...
$ detta-> resa (5) -> millisekunder ();
$ detta-> resa (5) -> sekunder ();
$ detta-> resa (5) -> minuter ();
$ detta-> resa (5) -> timmar ();
$ detta-> resa (5) -> dagar ();
$ detta-> resor (5) -> veckor ();
$ detta-> resa (5) -> år ();
// Res in i det förflutna ...
$ detta-> resa (-5) -> timmar ();
// Res till en tydlig tid ...
$ this-> travelTo (now () -> subHours (6));
// Återgå till nuvarande tid ...
$ detta-> travelBack ();
}

Dessa hjälpfunktioner gör ditt arbete snyggt och enkelt att genomföra genom att ge beskrivande namn på metoderna.

8. Förbättrad hastighetsbegränsning

Med hastighetsbegränsning kan du hantera den mängd trafik du får på en viss rutt eller grupp av rutter. Detta kan uppnås med hjälp av gasreglage. Gaspedalen tar namnet på den hastighetsbegränsare du vill använda på en rutt. En HTTP-förfrågan kod (429) returneras om den inkommande begäran överskrider en given hastighetsgräns.

I Laravel 8 har hastighetsbegränsaren byggts med mer flexibilitet samtidigt som den fortfarande har bakåtkompatibilitet. Med återuppringningsfunktionen för hastighetsbegränsare kan du dynamiskt bygga lämpliga hastighetsgränser som fastställts för autentiserade användare eller inkommande förfrågningar.

Spännande tider framåt för Laravel

Laravel är lätt att lära sig och ger en detaljerad utvecklarhandbok med exempel som är enkla att följa. Det ger buggfixar och korrigeringar nästan varje vecka och större utgåvor årligen (runt september). Om du behöver mer hjälp tillhandahåller Laravel Laracasts-plattformen där du kan få experthjälp. Plattformen ger dock betalda webbutvecklingslektioner.

För en webbutvecklare är Laravel en måstefärdighet. Det är öppen källkod, gratis att använda och med en grupp med över 40 000 användare. Det är en teknik som är värt att hålla reda på.

E-post
5 webbramar som är värda att lära sig för utvecklare

Intresserad av att lära dig avancerad webbutveckling? Undvik att skriva upprepad kod använd dessa webbutvecklingsramar istället.

Läs Nästa

Relaterade ämnen
  • Programmering
  • Webbutveckling
  • PHP-programmering
Om författaren
Jerome Davidson (2 artiklar publicerade)Mer från Jerome Davidson

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Ett steg till…!

Bekräfta din e-postadress i e-postmeddelandet som vi just skickade till dig.

.