Šta nam donosi Laravel 9
Laravel je već dugo vremena jedan od najpopularnijih PHP framework-ova. Zahvaljujući svojoj skalabilnosti i jednostavnosti postao je ultimativni framework za kompanije koje rade sa PHP-om. Uskoro nam dolazi u verziji 9. Zato ćemo u ovom tekstu predstaviti šta će nam doneti Laravel 9.
U prošlosti, nova izdanja ovog popularnog PHP framework-a su se pojavljivala svakih 6 meseci, što je često sa sobom donosilo i dosta zabune vezano za nova izdanja. Sa izdanjem 9 Laravel se prebacio na ciklus 12-mesečnog izdavanja novih verzija. Verzija 9 će se pojaviti u januaru 2022.
Šta je Laravel
Laravel je open-source PHP framework poznat po svojoj elegantnoj sintaksi. U pitanju je MVC (Model-View-Controller) framework za razvoj različitih tipova web aplikacija koristeći PHP programski jezik.
Ključne funkcionalnosti Laravela
Ukoliko niste dovoljno upoznati sa Laravelom, evo nekih od njegovih najvažnijih funkcionalnosti.
Eloquent ORM
ORM (Object-regional-mapper) za Laravel se zove Eloquent i predstavlja jednu od najboljih funkcionalnosti Laravela. Pomoću Eloquenta Laravel se lako integriše sa svakim modelom baze podataka, uključujući i pisanje kompleksnih SQL query-a.
Artisan CLI
Artisan CLI ili komandna linija je još jedan značajan aspekt Laravela. Pomoću njega možete kreirati ili menjati bilo koji deo Laravela iz komandne linije, bez potrebe da se krećete kroz foldere i fajlove.
Pomoću Artisana možete čak ostvariti interakciju sa vašom bazom podataka direktno iz vaše komandne linije, koristeći Laravel Tinker i sve to bez potrebe za instaliranjem klijenta za bazu podataka.
Automatska paginacija
Laravel elegantno rešava pitanje paginacije na vašoj web stranici. U pitanje je automatska paginacija koja u Laravelu dolazi kao gotovo rešenje. U pitanju je jedna od najpoznatijih funkcionalnosti Laravela i značajno olakšava rad kada je potrebno primeniti paginaciju.
Bezbednost
Bezbednost web sajta je postao prioritet, pogotovo u današnje vreme kada je došlo i do značajnog povećanja online finansijskih transakcija. Zato Laravel dolazi sa brojim sigurnosnim merama, koje su ugrađene kao gotovo rešenje, uključujući i CSRF (cross-site request forgery) zaštitu od SQL injection-a.
Šta će nam doći sa Laravelom 9
Prvobitno je verzija 9 bila zakazana za septembar 2021, ali je naknadno datum izdanja pomeren na januar 2022. To će inače biti prvo LTS (long-term support) izdanje koje će imati ciklus izdavanja na 12 meseci.
Nove funkcionalnosti u Laravelu 9
Minimalni zahtevi po pitanju PHP-a
Pre svega, Laravel 9 će zahtevati najnoviju verziju PHP-a (PHP 8) i PHPUnit 8 za testiranje. To je zato što će Laravel 9 koristiti najnoviji Symphony v6.0 koji takođe zahteva PHP 8.
PHP 8 dolazi sa značajnim poboljšanjima i funkcionalnostima, od JIT kompajliranja do uvođenja constructor svojstva. Više o novoj verziji PHP-a možete pročitati u našem tekstu na blogu PHP 8.0.
Anonymous Stub Migration
Pomoću Laravela je jednostavno uraditi migraciju. Implementacijom Anonymous Stub Migration rešenja rešen je problem koji nastaje kada postoje isti nazivi klasa, a vi pokušavate da ponovo kreirate bazu ispočetka. Od verzije Laravel 8.37 podržana je ova nova funkcionalnost, dok će u verziji 9.0 ovo biti podrazumevana funkcionalnost.
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('people', function (Blueprint $table)
{
$table->string('first_name')->nullable();
});
}
};
New Query Builder interfejs
Sa novom verzijom Laravel 9 predikcija kucanja (type hinting) dobija još unapređenja. Tu je i New Query Builder interfejs za predikciju, refaktoring i statičku analizu.
<?php
return Model::query()
->whereNotExists(function($query) {
// $query is a Query\Builder
})
->whereHas('relation', function($query) {
// $query is an Eloquent\Builder
})
->with('relation', function($query) {
// $query is an Eloquent\Relation
});
PHP 8 string funkcije
S obzirom da Laravel 9 podržava PHP 8 sa Laravelom 9 moguće je interno koristiti nove str_contains(), str_starts_with() and str_ends_with() funkcije interno u \Illuminate\Support\Str class.
Sve ovde navedeno je naravno samo deo novih funkcionalnosti koje će nam doći sa Larevelom 9.
Kako da instalirate Laravel 9
Ukoliko želite da se isprobate Laravel 9 za potrebe razvoja i testiranja, možete ga jednostavno instalirati i pokrenuti na vašem lokalnom računaru.
Kako smo već pomenuli Laravel 9 podržava PHP 8, pa ako planirate da ga testirate, proverite svoju verziju PHP-a ili instalirajte najnoviju verziju. Da biste instalirali Laravel pomoću composer-a pokrenite sledeću komandu:
composer create-project --prefer-dist laravel/laravel laravel-9-dev dev-develop
Ova komanda če kreirati novi Laravel projekat pod nazivom laravel-9-dev
koristeći Laravel 9, koji je kao što znamo još u fazi razvoja (odatle u nazivu -dev
). Drugi način koji možete koristiti za instalaciju je Laravel global CLI da biste kreirali novi Laravel projekat i izabrali da kreirate vaš novi projekat iz dev branch-a.
Unesite sledeću komandu da biste kreirali novi Laravel9 projekat:
laravel new laravel-9-dev --dev
Sada kada ste instalirali Laravel 9 možete ući u novi direktorijum (laravel-dev) i pokrenuti artisan komandu da biste proverili verziju:
cd laravel-9-dev
php artisan --version
Ukoliko ste sve odradili kako treba, prikazaće vam verziju 9.
Time ste ujedno završili instalaciju Laravela 9.
Srećno testiranje!
Bez komentara