A Laravel 9 jellemzői & Miről van szó…

A Laravel már régóta az egyik legelterjedtebb PHP keretrendszer. Alkalmazkodható, méretezhető, sokoldalú, és a PHP-val dolgozó mérnökök és cégek egyik rendszerévé vált. A Laravel 9 most már úton van, számos új funkcióval. Nem meglepő, hogy a Laravel az egyik vezető PHP-keretrendszer lett az eneavour review webalkalmazások, egyedi és robusztus alkalmazások készítésében.

A Laravel mindig arra törekszik, hogy a fejlesztési folyamatot gördülékenyebbé és gyorsabbá tegye; Ezért folyamatosan keresik az új kiadásokat új funkciókkal, funkciókkal, fejlesztésekkel és még sok mással. A Laravel számos frissítésen ment keresztül. Funkciói és funkciói olyan jól fejlődtek, hogy végül a webalkalmazás-fejlesztés legjobb PHP rendszerévé vált.

Az eredetileg 2021 szeptemberére tervezett Laravel 9-et 2022 januárjára tolták, így ez lett az első hosszú távú bővítő (LTS) kiadás, amelyet a 12 hónapos megjelenési ciklust követően vezettek be. Beszéljük meg a Laravel 9 eddig bejelentett összes új funkcióját és frissítését.

Laravel 9 és mire számíthatunk

Állítólag a Laravel 9 az első hosszú távú támogatás, amelyet 12 hónapos kiadási ciklusban adtak ki, és eredetileg 2021 szeptemberére jelentették be. Később azonban úgy döntöttek, hogy 2022 januárjáig tolják el. A Laravelnek különböző rendszerfüggőségei vannak. közösségvezérelt és Symfony 9 könyvtárak, és a Symfony azt tervezte, hogy 2021 novemberére kiadja a Symfony v6.0-t, ami miatt a Laravel csapata elhalasztotta a Laravel v9 kiadását. A teljes Laravel keretrendszer frissítése vagy frissítése a Symfony legfrissebb verziójára eltart egy ideig, és sok tesztet és megfigyelést is kell végezni az esetleges törésekkel szemben, mielőtt piacra kerülne. Végre, ha a Laravel 9 kiadását 2022 januárjáig halasztjuk, a Laravel csapata jobb helyzetben lesz ahhoz, hogy évente kiadja a következő LTS-t. Tekintettel arra, hogy a Laravel csapat 2 hónappal a Symfony megjelenése után. Most, hogy ismeri a változások okait, fedezzük fel az új Laravel v9-et, mielőtt 2022. január 22-én megjelenne.

Olvasni:  Black Friday & Kiberhétfői ajánlatok 2024-re

Laravel 9 új funkciók

Minimális PHP követelmény

A Laravel 9 telepítéséhez a PHP 8 legfrissebb formájára, a PHPUnit 9-re és számos további, a jövőben meghatározott előfeltételre van szükség. A Laravel keretrendszerként számos közösségvezérelt és Symfony 9 könyvtártól függ. Mivel a Symfony 2021 novemberére tervezte a v6.0 kiadását, ez arra kényszerítette a Laravel csapatát, hogy késleltesse a Laravel v9 kiadását. A PHP 8 követelménye azért van, mert a Laravel 9 kizárólag a Symfony legújabb v6.0-s kiadásától függ, amely a PHP 8-tól függ. Fedezze fel a PHP tárhelyet és a PHP 8 újdonságait, valamint a PHP-verziók megkülönböztető referenciaértékeit, hogy megragadhassa a szoftver fejlesztéseit és funkcióit. PHP 8 a Just-In-Time fordítótól (JIT) a kivitelezői ingatlanok promóciójáig.

Névtelen csonkok áttelepítése

A Laravel beállítja, hogy a népszerű migrációs parancs végrehajtásakor alapértelmezett viselkedésként bevezesse a névtelen csonkáttelepítést:

php kézműves make:migration

A névtelen csonkáttelepítési funkciót először a Laravel 8.37-ben vezették be a Github probléma megoldására. A probléma ugyanazon osztálynéven belüli több migráció esetén problémákat okozhat a teljes adatbázis újbóli létrehozása során. A csonkáttelepítési szolgáltatás kiküszöböli az áttelepítési osztálynév-ütközéseket.

Új Query Builder felület

A Laravel 9-ben a típushivatkozás rendkívül megbízható az IDE-jükben az újrafaktorálás, az inaktív elemzés és a kódkiegészítés szempontjából. Ennek oka, hogy megosztott interfészre vagy öröklődésre van szükség a QueryBuilder, az EloquentBuilder és az EloquentRelation között. Ennek ellenére a Laravel 9-el a mérnökök most már élvezhetik az új lekérdezéskészítő felületet a típusujgatásokhoz, az újrafaktoráláshoz és a statikus elemzéshez.

PHP 8 karakterlánc-függvények

Mivel a Laravel 9 a PHP 8-at célozza meg, a Laravel kombinálta ezt a PR-t, ami a PHP 8 legfrissebb karakterlánc-függvényeinek használatát javasolja. Ezek a függvények magukban foglalják az str_contains(), str_starts_with() és str_ends_with() belső használatát az IlluminateSupportStr osztályban. A Laravel 9 felsorolt ​​funkciói és fejlesztései bepillantást nyújtanak az elkövetkezendőkbe. Minden bizonnyal hibajavításokat, funkciókat és természetesen számos áttörést jelentő változást hoz majd.

Olvasni:  Mennyibe kerül valójában a Hootsuite?

Semmi sem olyan egyszerű, mint a Laravel-alkalmazások telepítése a felhőn

A DreamHost segítségével PHP-alkalmazásait néhány perc alatt elindíthatja és futtathatja felügyelt felhőszervereken.

Miért lépjünk át a Laravel 8-ról a 9-re?

Flysystem 2.0

A Laravel 9.x áttelepült innen Flysystem 1.x-től 2.x-ig. A motorháztető alatt a Flysystem hajtja végre a Capacity homlokzat által biztosított rekordkezelési stratégiákat. Ennek fényében szükség lehet néhány változtatásra az alkalmazáson belül. Mindenesetre arra törekedtünk, hogy ezt a lépést a lehető legkövetkezetesebbé tegyük.

Symfony Mailer

Az egyik legnagyobb változás a Laravel 9.x-ben az elmozdulás SwiftMailer, amelyet 2021 decemberétől már nem tartanak fenn a Symfony Mailernek. Laravel azonban megpróbálta ezt a lépést a lehető legkövetkezetesebbé tenni az Ön alkalmazásai számára. Ennek ellenére ideális lenne, ha teljesen átnézné az alábbi módosítások listáját, hogy biztosítsa az alkalmazás teljes konzisztenciáját.

Egyéni leadások és nulla

A Laravel korábbi kiadásaiban az egyéni cast-osztályok beállított stratégiáját nem hívták meg, ha a cast attribútum nullra lett állítva. Ez a viselkedés azonban ellentétben állt a Laravel-dokumentációval. A Laravel 9.x-ben a leadott kurzus beállított stratégiája nullával lesz meghívva, mint adott $érték argumentum. Ezért garantálnia kell, hogy egyéni öntvényei megfelelően kezelik ezt a helyzetet.

Alapértelmezett HTTP-kliens időtúllépés

A HTTP-kliens mostantól 30 másodperces alapértelmezett időtúllépést tartalmaz. Más szóval, ha a szerver nem válaszol 30 másodpercen belül, kivételt dob ​​a rendszer. A HTTP-kliensen már nem volt beállítva az alapértelmezett időtúllépési hossz, ami miatt a kérések néha határozatlan ideig „lefagynak”. Ha hosszabb időt szeretne megadni egy adott kérelemhez, ezt az időtúllépési módszerrel teheti meg:

$response = Http::timeout(120)->get(…);

A lang könyvtár

A Laravel 9.x alkalmazásokban az erőforrások/nyelv könyvtár jelenleg a gyökér projektkönyvtárban (lang) található. Ha a csomag nyelvi fájlokat tesz közzé ebbe a könyvtárba, akkor meg kell győződnie arról, hogy a csomag az app()->langPath() könyvtárban jelenik meg, nem pedig egy keményen kódolt elérési útban.

Olvasni:  Mire van szükségünk ahhoz, hogy távol tartsuk a távoli csapatokat az irodában

A jelszószabály

A jelszószabály, amely ellenőrzi, hogy a megadott bemeneti érték megegyezik-e a megerősített felhasználó aktuális jelszavával, át lett nevezve jelenlegi_jelszóra. A when / unless Methods Mint azt Ön is tudja, amikor és hacsak nem metódusokat kínálnak a különböző osztályok a keretrendszerben. Ezek a metódusok használhatók egy művelet feltételes végrehajtására, ha a metódus első argumentumának logikai értéke igaz vagy hamis:

$gyűjtemény->when(true, function ($collection) { $gyűjtemény->merge([1, 2, 3]); });

Ennélfogva a Laravel korábbi kiadásaiban a lezárás átadása a when vagy azless metódusoknak azt sugallták, hogy a feltételes művelet mindig végrehajtásra kerül, mivel a bezárási objektummal való laza összehasonlítás mindig igazra értékelődik. Ez gyakran megdöbbentő eredményekhez vezet, mivel a mérnökök azt várják, hogy a bezárás eredményét használják fel logikai értékként, amely eldönti, hogy a feltételes művelet végrehajtásra kerüljön-e. Tehát a Laravel 9.x-ben minden, a when vagy unless metódusnak átadott lezárás, és a bezárás által visszaadott érték a when és unless metódusok által használt logikai értéknek minősül.

A Laravel 9 befolyásolói

Megkerestük a közösség néhány tagját, és követtük a Twitter befolyásolóit a Laravel 9-ről írt véleményekkel kapcsolatban, íme, mit mondanak róla,

Graham Cambell

„A Laravel 9 főként egy olyan kiadás, amely lehetővé teszi számunkra, hogy törést okozó változtatásokat hajtsunk végre, és frissítsünk a Symfony 6 összetevőkre, áttérjünk a Swift Mailerről a Symfony Mailerre, és frissítsünk a Flysystem 2-re. Szinte minden új funkció a Laravel 8-ban landolt, új funkciókkal az elmúlt évben szinte minden héten landolt. Dries, én és még sokan mások keményen dolgoztunk azon, hogy a Laravel 8 és támogató csomagjai működjenek a PHP 8.1-en, így nem kell várni a Laravel 9-ig, hogy a PHP 8.1-re frissítsünk, ami szuper jó.”

Taylor Otwell

„Úgy találom, hogy a Laravel 9 kiadás sokkal inkább egy kisebb „karbantartási” kiadás a többi korábbi nagyobb Laravel kiadáshoz képest. Ha elköteleztük magunkat évente csak 1 „nagy” kiadás mellett, az valóban arra késztetett bennünket, hogy egy csomó olyan dolgot szállítsunk ki, amit általában visszatartottunk volna egy nagyobb kiadásért.”

Jess Archer

„A Laravel 9-nek nincs annyi főcímfunkciója, mint egy normál Laravel-kiadásnak, mivel a csapat az év során az új funkciók kiadására összpontosított, most, hogy éves kiadási ciklusra tértek át. Az új funkciók meglehetősen átfogó listája a https://laravel-news.com/laravel-9 oldalon található. Az egyetlen dolog, amiről nem esik szó, és ami miatt izgatott vagyok, az a Generics osztály új támogatása, amely valóban segít a statikus elemzés javításában.”

Következtetés

A Laravel egy lenyűgöző PHP keretrendszer, amely egyre nagyobb figyelmet kap a fejlesztők körében. A 12 hónapos kiadási ciklus után a készülőben lévő fő kiadás az elsődleges, és már most látható, hogy „lédús” új funkciókat fog bevezetni. A Laravel valószínűleg új funkciókat fog hozzáadni a megjelenés dátuma előtt, ezért kövesse ezt a cikket a jövőbeni frissítések és áttekintések érdekében.

Olvasni:  Gen Z vásárlási szokások & Trendek: e-kereskedelmi útmutató

×

Szerezze meg hírlevelünket
Legyen Ön az első, aki megkapja a legújabb frissítéseket és oktatóanyagokat.

Köszönjük, hogy feliratkozott ránk!

Új publikációk:

Ajánlott