Definitie: Laravel is een open source framework voor de programmeertaal PHP, waarmee ontwikkelaars webapplicaties bouwen op een gestructureerde, veilige en efficiënte manier. Het biedt kant-en-klare onderdelen voor veelvoorkomende taken zoals routing, databasebeheer, inloggen, e-mail en wachtrijen.

In het kort

  • Laravel is ontwikkeld door Taylor Otwell en verscheen voor het eerst in 2011. Het is gratis te gebruiken onder de MIT-licentie.
  • Laravel werkt volgens het MVC-patroon: model, view en controller, wat code overzichtelijk houdt.
  • Bekende onderdelen zijn Eloquent voor de database, Blade voor sjablonen en Artisan voor commando’s.
  • Laravel is een van de populairste PHP-frameworks en geschikt voor klantportalen, interne tools, SaaS-producten en API’s.

Wat is Laravel?

PHP is een van de meest gebruikte programmeertalen voor het web. Een groot deel van de websites draait erop, waaronder alles wat met WordPress is gebouwd. Wie in PHP een webapplicatie bouwt, moet veel basiszaken regelen: hoe een adres naar de juiste pagina leidt, hoe gegevens uit de database worden opgehaald, hoe gebruikers inloggen, hoe formulieren worden gecontroleerd en hoe de applicatie wordt beveiligd.

Een framework zoals Laravel levert die basis kant-en-klaar. Ontwikkelaars hoeven het wiel niet opnieuw uit te vinden en kunnen zich richten op wat de applicatie specifiek maakt. Laravel staat bekend om een leesbare, elegante schrijfwijze en een grote verzameling hulpmiddelen rondom het framework.

Waar komt Laravel vandaan?

Taylor Otwell bracht de eerste versie van Laravel uit in 2011, als alternatief voor het toen populaire framework CodeIgniter, dat volgens hem functies miste zoals ingebouwde gebruikersauthenticatie. Laravel groeide snel uit tot een van de meest gebruikte PHP-frameworks. Er verschijnt jaarlijks een nieuwe hoofdversie, met tussentijds kleinere updates en beveiligingsupdates. Rondom het framework is een bedrijf ontstaan dat aanvullende producten en diensten levert, zoals hosting- en beheeroplossingen.

Hoe werkt Laravel?

Laravel volgt het MVC-patroon:

  • Model. Beschrijft de gegevens en de regels daaromheen, zoals een klant, opdracht of factuur.
  • View. De weergave die de gebruiker ziet, zoals een pagina of e-mail.
  • Controller. Verbindt beide: ontvangt een verzoek, haalt de juiste gegevens op en kiest de weergave.

Een verzoek van een gebruiker, bijvoorbeeld het openen van een overzicht, gaat via een route naar een controller. Die haalt via een model de gegevens op uit de database en geeft ze aan een view, die de pagina opbouwt. Die scheiding maakt het makkelijker om code te begrijpen, te testen en aan te passen.

Een voorbeeld: van verzoek tot pagina

Stel dat een medewerker in een planningsapplicatie het overzicht van de opdrachten van vandaag opent. In Laravel gebeurt dan het volgende:

  1. De route herkent het adres, bijvoorbeeld /opdrachten/vandaag, en stuurt het verzoek naar de juiste controller.
  2. Middleware controleert of de medewerker is ingelogd en het overzicht mag zien.
  3. De controller vraagt via het model alle opdrachten op met de datum van vandaag, inclusief de klant en de toegewezen monteur.
  4. Eloquent vertaalt die vraag naar een databasequery en geeft de resultaten terug als objecten.
  5. De view bouwt met Blade de pagina op: een tabel met tijd, klant, adres, monteur en status.
  6. De pagina wordt naar de browser gestuurd.

Wijst de planner daarna een opdracht toe, dan kan Laravel op de achtergrond via een wachtrij een bericht naar de monteur sturen, zonder dat de planner hoeft te wachten.

Hoe ziet Laravel-code eruit?

Een groot deel van de populariteit komt door de leesbaarheid. Waar je in gewoon PHP een databasequery met de hand schrijft, lees je in Laravel bijna een Engelse zin, zoals het ophalen van alle openstaande opdrachten van een bepaalde klant, gesorteerd op datum. Die leesbaarheid maakt het makkelijker om code te begrijpen, ook voor een ontwikkelaar die later aansluit. Dat is voor een opdrachtgever een concreet voordeel: hoe begrijpelijker de code, hoe minder tijd een aanpassing kost.

Belangrijke onderdelen van Laravel

Onderdeel Wat het doet
Routing Bepaalt welke code wordt uitgevoerd bij welk adres
Eloquent Werkt met de database via modellen in plaats van losse SQL-query’s
Migraties Leggen de opbouw van de database vast in code, zodat wijzigingen te volgen zijn
Blade Sjabloontaal voor het opbouwen van pagina’s en e-mails
Authenticatie Inloggen, registreren en wachtwoorden herstellen
Autorisatie Bepalen wie wat mag zien en doen
Wachtrijen Taken op de achtergrond uitvoeren, zoals e-mails versturen of bestanden verwerken
Scheduler Taken op vaste tijden uitvoeren, zoals een dagelijkse rapportage
Artisan Commando’s om code te genereren, migraties te draaien en taken uit te voeren
Testen Ingebouwde ondersteuning voor geautomatiseerde tests

Het ecosysteem rond Laravel

Laravel is meer dan het framework zelf. Er is een uitgebreide verzameling aanvullende pakketten en tools:

  • Livewire en Inertia om interactieve interfaces te bouwen, met of zonder JavaScript-framework zoals Vue of React.
  • Breeze en Jetstream als startpunt voor inloggen, registratie en accountbeheer.
  • Sanctum en Passport voor beveiligde API’s.
  • Horizon voor het beheren van wachtrijen.
  • Cashier voor abonnementen en betalingen via Stripe of Paddle.
  • Forge en andere hostingdiensten om servers in te richten en applicaties uit te rollen.

Daarnaast is er een grote community met documentatie, videocursussen, pakketten en ontwikkelaars, ook in Nederland.

Voordelen van Laravel

  • Snel ontwikkelen. Veel standaardfuncties zijn er al, zodat je sneller tot een werkende applicatie komt.
  • Leesbare, onderhoudbare code. De vaste structuur maakt het voor andere ontwikkelaars makkelijker om verder te bouwen.
  • Beveiliging. Laravel beschermt standaard tegen veelvoorkomende aanvallen zoals SQL-injectie, cross-site scripting en cross-site request forgery.
  • Schaalbaarheid. Met wachtrijen, caching en goede hosting groeit een applicatie mee met het gebruik.
  • Grote community. Veel ontwikkelaars kennen Laravel, wat de afhankelijkheid van één partij verkleint.
  • Gratis en open source, zonder licentiekosten.
  • Goede documentatie, die bekendstaat als helder en compleet.

Laravel en WordPress: wat is het verschil?

Beide draaien op PHP, maar ze hebben een ander doel. WordPress is een contentmanagementsysteem: ideaal voor websites, blogs en webshops waarin vooral content wordt beheerd. Laravel is een framework om applicaties te bouwen met eigen logica, gebruikers, rollen en processen. Een website met informatie past bij WordPress; een klantportaal, planningssysteem of SaaS-product past bij Laravel. Ze kunnen ook naast elkaar bestaan, bijvoorbeeld een WordPress-website met een Laravel-applicatie voor ingelogde klanten.

Nadelen en aandachtspunten

  • PHP is niet voor alles de beste keuze. Voor realtime toepassingen met zeer veel gelijktijdige verbindingen of zware rekenprocessen zijn soms andere technieken geschikter.
  • Updates bijhouden. Elk jaar verschijnt een hoofdversie. Wie niet bijwerkt, bouwt technische schuld op.
  • Veel mogelijkheden. De rijke verzameling pakketten vraagt om bewuste keuzes, anders wordt een applicatie onnodig complex.
  • Hosting. Een Laravel-applicatie vraagt om een server of platform dat PHP, een database en achtergrondtaken ondersteunt.

Waarvoor wordt Laravel gebruikt?

  • Klantportalen waarin klanten inloggen en hun eigen gegevens zien.
  • Interne tools en backoffice-systemen voor planning, administratie of orderverwerking.
  • SaaS-producten met abonnementen, gebruikersbeheer en rollen.
  • API’s die gegevens leveren aan een mobiele app of andere systemen.
  • Koppelingen tussen bestaande systemen, met wachtrijen en geplande taken.
  • Webshops en platforms met maatwerklogica.

Laravel en onderhoud

Een Laravel-applicatie is na oplevering niet klaar. Laravel brengt elk jaar een hoofdversie uit en ondersteunt oudere versies een beperkte periode met bug- en beveiligingsupdates. Daarnaast worden PHP zelf en de gebruikte pakketten regelmatig bijgewerkt. Wie die updates jarenlang overslaat, krijgt een applicatie die steeds moeilijker te verbeteren is en uiteindelijk geen beveiligingsupdates meer krijgt.

Een gezonde aanpak is om updates in kleine stappen bij te houden, bijvoorbeeld als vast onderdeel van het onderhoud. Met geautomatiseerde tests is het veilig om een nieuwe versie door te voeren, omdat je direct ziet of er iets breekt. Spreek bij het laten bouwen af wie die updates uitvoert en hoe vaak.

Laravel en AI

Laravel wordt steeds vaker gebruikt als basis voor applicaties met AI-functies. Het framework leent zich goed om taalmodellen te koppelen via een API, bijvoorbeeld om teksten samen te vatten, documenten uit te lezen of een assistent in een klantportaal te plaatsen. De wachtrijen van Laravel zijn daarbij handig, omdat AI-aanroepen soms enkele seconden duren en dan beter op de achtergrond kunnen draaien. Ook voor het opslaan van embeddings, bijvoorbeeld met PostgreSQL en pgvector, past Laravel goed in de opzet.

Laravel vergeleken met andere frameworks

Framework Taal Kenmerk
Laravel PHP Veel ingebouwde functies, leesbare code, groot ecosysteem
Symfony PHP Zeer modulair, veel gebruikt in grote bedrijfsapplicaties; Laravel gebruikt onderdelen van Symfony
Django Python Uitgebreid framework met ingebouwde beheeromgeving
Ruby on Rails Ruby Inspiratiebron voor Laravel, sterk in snelle ontwikkeling
Express / NestJS JavaScript / TypeScript Populair voor API’s en realtime toepassingen

De keuze hangt vaak af van wat het team kent, welke systemen er al zijn en wat de applicatie moet doen. Voor de meeste zakelijke webapplicaties zijn deze frameworks allemaal geschikt.

Beveiliging in Laravel

Laravel heeft veel beveiligingsmaatregelen standaard ingebouwd:

  • Bescherming tegen SQL-injectie, doordat Eloquent en de querybuilder invoer veilig verwerken.
  • Bescherming tegen cross-site scripting, doordat Blade uitvoer standaard veilig weergeeft.
  • CSRF-bescherming, zodat formulieren alleen vanaf je eigen applicatie kunnen worden verstuurd.
  • Veilige opslag van wachtwoorden met moderne hashing.
  • Versleuteling van gevoelige gegevens en cookies.
  • Autorisatie met policies en gates, om per handeling te bepalen wie wat mag.
  • Beperken van verzoeken, om misbruik en brute-force-aanvallen tegen te gaan.

Ingebouwde beveiliging is een goede basis, maar geen garantie. Rollen en rechten moeten per applicatie goed worden uitgewerkt, en updates moeten tijdig worden doorgevoerd.

Hosting van een Laravel-applicatie

Een Laravel-applicatie heeft een server nodig met PHP, een database zoals MySQL of PostgreSQL, en bij voorkeur ondersteuning voor achtergrondtaken en geplande taken. Er zijn verschillende opties:

  • Een eigen virtuele server, ingericht en beheerd met een dienst zoals Forge.
  • Een beheerd platform dat servers, schaling en uitrol voor je regelt.
  • Serverless, waarbij de applicatie draait op een cloudplatform dat automatisch meeschaalt.
  • Gedeelde hosting is mogelijk voor eenvoudige applicaties, maar vaak beperkt in achtergrondtaken en prestaties.

Kies hosting op basis van het verwachte gebruik, de eisen aan beschikbaarheid en wie het beheer doet.

Waar let je op als je een Laravel-applicatie laat bouwen?

  1. Vraag naar de versie en hoe updates worden bijgehouden.
  2. Vraag naar tests. Geautomatiseerde tests maken toekomstige aanpassingen veiliger.
  3. Regel toegang tot de broncode en de repository.
  4. Let op de hosting, inclusief back-ups, achtergrondtaken en monitoring.
  5. Vraag hoe gangbaar de opbouw is, zodat een andere Laravel-ontwikkelaar later kan aansluiten.
  6. Vraag welke pakketten worden gebruikt en of die actief worden onderhouden. Een pakket dat niet meer wordt bijgewerkt, kan een toekomstige update blokkeren.
  7. Spreek af hoe uitrol werkt. Een vaste, geautomatiseerde manier om nieuwe versies online te zetten voorkomt fouten en stilstand.
  8. Vraag om documentatie van de belangrijkste onderdelen, koppelingen en instellingen.

Wat betekent dit voor jouw project?

Bij een nieuw idee onderzoek ik eerst of een bestaand pakket, een koppeling of maatwerk het beste past. Is maatwerk de logische keuze, dan is een framework als Laravel een stevige basis: het is breed bekend, goed gedocumenteerd en daardoor minder afhankelijk van één ontwikkelaar. Dat vind ik belangrijk, omdat je moet weten waar de code staat en wat er gebeurt als je ooit met een andere partij verder wilt.

Wil je een webapplicatie laten bouwen op een stevige, gangbare basis? Stuur me voor wie het is, wat er nu gebeurt en wat de eerste versie moet oplossen. Dan bepalen we samen de logische eerste stap. Lees ook wat er komt kijken bij een Laravel webapplicatie.

Veelgestelde vragen over Laravel

Wat is Laravel?

Laravel is een open source PHP-framework waarmee ontwikkelaars webapplicaties bouwen op een gestructureerde, veilige en efficiënte manier. Het biedt kant-en-klare onderdelen voor routing, databasebeheer, inloggen, e-mail en wachtrijen.

Wat zijn de voordelen van Laravel?

Laravel maakt ontwikkelen sneller dankzij ingebouwde functies, levert leesbare en onderhoudbare code, beschermt standaard tegen veelvoorkomende aanvallen en heeft een grote community. Het is bovendien gratis en open source.

Is Laravel gratis?

Ja. Laravel is open source en gratis te gebruiken onder de MIT-licentie. Je betaalt wel voor hosting en eventueel voor aanvullende diensten of pakketten.

Verwante termen

Webapplicatie · Maatwerk software · API-koppeling · Broncode · Technische schuld · Klantportaal

← Terug naar de kennisbank