Wat is Laravel en hoe ga je ermee aan de slag?

0
263

Laravel is een webframework voor het maken van aangepaste applicaties. Het draait op PHP en is volledig gratis en open source. We zullen bespreken wat dit framework een goede keuze maakt en waarom u uw app hierop zou willen baseren.

Waar wordt Laravel voor gebruikt ?

Laravel wordt voornamelijk gebruikt voor het bouwen van aangepaste web-apps met behulp van PHP. Het is een webframework dat veel dingen afhandelt die vervelend zijn om zelf te bouwen, zoals routering, HTML-templating en authenticatie.

Laravel is volledig server-side, omdat het op PHP draait, en richt zich sterk op gegevensmanipulatie en het vasthouden aan een Model-View-Controller-ontwerp. Een framework als React zou de meeste aandacht kunnen besteden aan gebruikersinteractie en glanzende functies, maar Laravel biedt gewoon een solide basis waarop je kunt bouwen en doet het goed.

Laravel is een van de beste PHP-webframeworks, maar er zijn veel andere frameworks in verschillende talen. Rails is een ander door de server gerenderd framework, vergelijkbaar met Laravel, maar gebaseerd op Ruby. React, Vue en Angular zijn allemaal client-side JavaScript-frameworks, maar kunnen ook worden geconfigureerd om server-side weer te geven.

Als alternatief, als uw toepassing neigt naar een blogstijl met meerdere op tekst gebaseerde berichten, kunt u deze baseren op WordPress, dat ook op PHP draait. Maar Laravel dwingt je niet om functies te gebruiken die je niet wilt, het geeft je alleen de tools om zelf iets als WordPress te bouwen.

Hoe werkt Laravel?

Laravel gebruikt een ontwerppatroon genaamd Model-View-Controller of MVC.

Het “Model” vertegenwoordigt de vorm van de gegevens waarop uw toepassing werkt. Als je een tabel met gebruikers hebt, elk met een lijst van berichten die ze hebben gemaakt, dan is dat jouw model.

Advertentie

De “Controller” interageert met dit model. Als een gebruiker vraagt ​​om hun berichtenpagina te zien, praat de controller met het model (vaak alleen de database) en haalt de info op. Als de gebruiker een nieuwe post wil maken, werkt de controller het model bij. De controller bevat de meeste logica voor uw toepassing.

De controller gebruikt die informatie om een ​​“View.” De weergave is een sjabloon waarmee het model kan worden ingeplugd en weergegeven, en kan worden gemanipuleerd door de controller. De weergave bestaat uit alle HTML-componenten van uw toepassing.

< p>Laravel gebruikt deze structuur om apps op maat aan te sturen. Het maakt gebruik van de Blade-templating-engine, waarmee HTML in stukken kan worden gebroken en beheerd door de controller. Het begint allemaal met routes, gedefinieerd in routes/web.php, die HTTP-verzoeken afhandelen op basis van de locatie die wordt aangevraagd. De volgende functie zou bijvoorbeeld worden uitgevoerd als een gebruiker https://yoursite.com/greeting heeft aangevraagd:

Route::get('/greeting', function () {   return view('greeting', ['name ' => 'James']); });

Deze route voert een functie uit die een weergave retourneert vanuit resources/views/. De weergave heeft gegevens doorgegeven (de naamvariabele), die deze binnen de opmaak kan gebruiken:

<!– Bekijk opgeslagen in resources/views/greeting.blade.php –> <html> <lichaam> <h1>Hallo, {{ $name }}</h1> </lichaam> </html>

Dit is zo eenvoudig als het wordt, maar er kan veel gebeuren tussen het verzoek en het retourneren van een weergave. Laravel ondersteunt middleware, die wordt uitgevoerd voordat het verzoek wordt afgehandeld. U kunt dit gebruiken om bepaalde pagina's te vergrendelen door te controleren of een gebruiker is geverifieerd voordat een verzoek wordt afgehandeld.

Advertentie

In plaats van een weergave direct weer te geven, kunt u de aanvraag ook doorgeven aan een controller, die complexere logica aankan voordat uiteindelijk een bron wordt geretourneerd (vaak een weergave). Je kunt meer lezen over de innerlijke werking van het Laravel-framework in hun documenten.

Hoe te beginnen

Laravel draait op PHP , wat betekent dat je alleen een webserver zoals Apache of Nginx nodig hebt waarop PHP is geïnstalleerd. Je hebt ook Composer nodig, een afhankelijkheidsmanager voor PHP, en je hebt een database nodig. MySQL werkt prima, maar PostgreSQL en SQLite worden ook ondersteund.

Zodra de afhankelijkheden zijn geïnstalleerd, kunt u Laravel downloaden en installeren vanuit Composer:

composer global required laravel/installer

Dit is technisch gezien alleen het Laravel-installatieprogramma, dus u moet een nieuwe Laravel-installatie maken met laravel new:

laravel new blog

Hiermee wordt een nieuwe map aangemaakt met de naam “blog” en installeert Laravel erop. Dit bevat een ingebouwd .htaccess-bestand, dus het enige wat u hoeft te doen is ervoor te zorgen dat mod_rewrite is ingeschakeld om .htaccess-bestanden in te schakelen en Apache naar de map te wijzen. Als alternatief, als je het gewoon van de grond wilt krijgen, kun je de ingebouwde Artisan-server van PHP gebruiken door de volgende opdracht in de projectdirectory uit te voeren:

php artisan serve

Dit lanceert een ontwikkelingsserver op localhost:8000. Als het op een server draait, moet je die poort openen of SSH-tunneling gebruiken om er toegang toe te krijgen. Dit is echter geen goede webserver, dus je wilt nog steeds Apache of Nginx voor productie.