Du beherrschst PHP-Grundlagen, möchtest aber endlich eine Webanwendung bauen, die nicht aus lose zusammengeklebten Dateien besteht? Ein Laravel-Tutorial auf Deutsch sollte deshalb mehr liefern als einzelne Codebeispiele: eine klare Lernroute, eine aktuelle Installation und ein kleines Projekt, an dem Routing, Datenbank, Templates und Validierung zusammen sichtbar werden.
Mit diesem Lernweg kommst du vom PHP-Grundwissen zur ersten Laravel-Anwendung
- Laravel 13 benötigt mindestens PHP 8.3.
- Für den Einstieg brauchst du PHP, Composer, Node.js und npm oder Bun.
- Ein kleines CRUD-Projekt vermittelt Routing, Controller, Blade, Eloquent und Migrationen besonders schnell.
- Deutschsprachige Tutorials sind hilfreich, sollten aber immer auf Versionsstand und Aktualität geprüft werden.
- Nach dem ersten Projekt zählen Tests, Sicherheit und saubere Projektstruktur mehr als möglichst viele Pakete.
Was Laravel für PHP-Entwickler so angenehm macht
Laravel ist ein PHP-Framework für moderne Webanwendungen. Es bringt fertige Lösungen für Routing, Datenbanken, Sitzungen, Validierung, Authentifizierung, Queues und Tests mit. Dadurch musst du nicht jedes technische Grundproblem selbst lösen und kannst dich stärker auf die eigentliche Anwendung konzentrieren.
Das Framework folgt einem klaren Muster, das häufig als MVC bezeichnet wird. Das Model arbeitet mit den Daten, der Controller verarbeitet Anfragen und die View stellt Inhalte dar. In Laravel übernimmt meist Blade die Darstellung, während Eloquent als objektrelationaler Mapper den Zugriff auf Datenbanken vereinfacht.
Ich halte Laravel besonders dann für sinnvoll, wenn du mehr als eine kleine PHP-Seite bauen möchtest. Für eine einzelne statische Landingpage wäre es überdimensioniert. Für ein Kundenportal, ein internes Verwaltungssystem, eine Schnittstelle oder eine datenbankgestützte Website schafft es dagegen eine verlässliche technische Basis.
Welche Vorkenntnisse wirklich nötig sind
Du musst kein PHP-Profi sein, solltest aber Variablen, Arrays, Funktionen, Klassen und grundlegende objektorientierte Programmierung verstehen. Auch HTML, etwas CSS und einfache SQL-Grundlagen helfen dir spürbar. Ohne diese Basis fühlt sich Laravel zunächst wie Magie an, bis du bei einem Fehler nicht mehr weißt, ob PHP, die Datenbank oder das Framework die Ursache ist.
JavaScript ist für den ersten Server-rendered Einstieg nicht zwingend notwendig. Sobald du interaktive Oberflächen, Live-Komponenten oder ein modernes Frontend planst, kommen jedoch Node.js und ein Build-Tool wie Vite hinzu.

Laravel 13 sauber installieren
Für neue Projekte ist im Jahr 2026 Laravel 13 der aktuelle Ausgangspunkt. Die Version setzt PHP 8.3 oder höher voraus. Außerdem benötigst du Composer für PHP-Abhängigkeiten sowie Node.js und npm oder Bun, wenn du Frontend-Dateien kompilieren möchtest.
Auf macOS und Windows kann Laravel Herd den Einstieg vereinfachen, weil PHP, Composer und die lokale Serverumgebung gebündelt verwaltet werden. Wer lieber mit Docker arbeitet, kann Laravel Sail verwenden. Ich würde Anfängern Herd oder eine normale lokale PHP-Installation empfehlen, weil weniger Container-Konfiguration vom eigentlichen Lernen ablenkt.
Ein Projekt anlegen
Wenn PHP und Composer bereits installiert sind, installierst du den Laravel-Installer über Composer und legst anschließend ein neues Projekt an.
composer global require laravel/installer
laravel new notizbuch
cd notizbuch
npm install
npm run build
composer run devDer Befehl laravel new führt dich durch einige Einstellungen, zum Beispiel Datenbank und Starter-Kit. Für ein erstes Lernprojekt reicht SQLite meistens aus. Die Datenbank liegt dann als Datei im Projekt, sodass du keinen separaten MySQL-Server einrichten musst.
Alternativ kannst du ein Projekt direkt mit Composer erzeugen. Entscheidend ist weniger der konkrete Befehl als eine saubere Versionsauswahl. Bei einem bestehenden Projekt solltest du nicht einfach die neueste Major-Version installieren, sondern die in der Anwendung verwendete Version prüfen.
Die ersten Prüfungen nach der Installation
Starte die Anwendung lokal und öffne sie im Browser. Wenn die Laravel-Startseite erscheint, funktionieren PHP, Composer, das Framework und der Entwicklungsserver grundsätzlich. Prüfe danach noch, ob der Artisan-Befehl erreichbar ist.
php artisan about
php artisan listArtisan ist die Kommandozeile von Laravel. Sie erzeugt Dateien, startet Wartungsaufgaben, führt Migrationen aus und hilft beim Debugging. Viele Anfänger suchen zu lange in Ordnern nach einer Lösung, obwohl Artisan den passenden Befehl bereits anbietet.
So entsteht dein erstes sinnvolles Laravel-Projekt
Zum Lernen empfehle ich eine kleine Notizbuch- oder Aufgabenanwendung. Sie ist überschaubar, enthält aber alle wichtigen Schritte. Du brauchst eine Tabelle, eine Eingabemaske, eine Liste, Bearbeitung und Löschung. Dieses Muster wird auch CRUD genannt, also Create, Read, Update und Delete.
1. Eine Datenstruktur mit Migration und Model anlegen
Erzeuge zunächst ein Model mit Migration. Das Model repräsentiert später einen Datensatz, die Migration beschreibt die Struktur der Datenbanktabelle.
php artisan make:model Note -mIn der Migration definierst du beispielsweise einen Titel und einen längeren Text. Die Methode up beschreibt, was angelegt wird. Die Methode down ermöglicht das Zurückrollen der Änderung.
Schema::create('notes', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('content');
$table->timestamps();
});Anschließend führst du die Migration aus.
php artisan migrateMigrationen sind mehr als ein Komfortwerkzeug. Sie halten Änderungen an der Datenbank nachvollziehbar fest und erleichtern die Zusammenarbeit im Team. Manuelle Änderungen direkt in einer Datenbank werden schnell zum Wartungsproblem.
2. Routes und Controller verbinden
Eine Route legt fest, welche Adresse welche Logik ausführt. Für den Anfang kannst du eine Route direkt definieren, bei mehreren Aktionen ist ein Controller übersichtlicher.
php artisan make:controller NoteController --resourceEine Ressourcenroute verbindet automatisch typische Aktionen wie Anzeigen, Erstellen, Speichern, Bearbeiten und Löschen.
Route::resource('notes', NoteController::class);Im Controller holst du die Daten mit Eloquent und übergibst sie an eine Blade-View.
public function index()
{
$notes = Note::latest()->get();
return view('notes.index', compact('notes'));
}Das Beispiel zeigt einen wichtigen Laravel-Gedanken. Der Controller soll die Anfrage koordinieren, aber nicht zu einem riesigen Sammelplatz für sämtliche Geschäftslogik werden. Sobald Methoden zu lang werden, lohnt sich eine Auslagerung in Services oder eigene Klassen.
3. Inhalte mit Blade ausgeben
Lege die Datei resources/views/notes/index.blade.php an. Blade erlaubt dir, PHP-Daten übersichtlich in HTML einzubetten.
Meine Notizen
@foreach ($notes as $note)
-
{{ $note->title }}
{{ $note->content }}
@endforeach
Die doppelte geschweifte Klammer {{ }} escaped Ausgaben standardmäßig. Das schützt vor vielen Cross-Site-Scripting-Angriffen. Rohes HTML solltest du nur ausgeben, wenn du die Quelle wirklich kontrollierst.
4. Formulare validieren und speichern
Ein Formular sollte nie ungeprüft in der Datenbank landen. Laravel bietet dafür eine verständliche Validierung.
$validated = $request->validate([
'title' => ['required', 'string', 'max:150'],
'content' => ['required', 'string'],
]);
Note::create($validated);Im Model musst du festlegen, welche Felder per Mass Assignment befüllt werden dürfen. Das ist eine wichtige Sicherheitsgrenze und kein Detail, das man einfach überspringen sollte.
protected $fillable = ['title', 'content'];Für Formulare verwendest du außerdem das CSRF-Token. Es verhindert, dass fremde Websites unbemerkt Anfragen in deinem Namen auslösen.
Diese Laravel-Bausteine solltest du in der richtigen Reihenfolge lernen
Laravel wirkt anfangs umfangreich, weil das Framework viele Bereiche abdeckt. Du musst nicht alles gleichzeitig verstehen. Die folgende Reihenfolge führt vom sichtbaren Ergebnis zu den komplexeren Themen.
| Baustein | Wofür er dient | Wann du ihn lernst |
|---|---|---|
| Routing | Ordnet URLs und HTTP-Anfragen einer Funktion oder einem Controller zu. | Ganz am Anfang |
| Blade | Erzeugt HTML-Seiten mit Layouts, Schleifen und Bedingungen. | Nach den ersten Routes |
| Eloquent | Ermöglicht den objektorientierten Zugriff auf Datenbankmodelle. | Beim ersten CRUD-Projekt |
| Migrationen | Versionieren Tabellen und Spalten der Datenbank. | Parallel zu Eloquent |
| Request-Validierung | Prüft Formulardaten, bevor sie verarbeitet oder gespeichert werden. | Sobald Eingaben entstehen |
| Authentifizierung | Regelt Anmeldung, Benutzer und geschützte Bereiche. | Nach dem Grundlagenprojekt |
| Queues und Jobs | Verlagern langsame Aufgaben in die Hintergrundverarbeitung. | Bei E-Mails, Importen oder APIs |
| Tests | Überprüfen automatisch, ob Funktionen korrekt arbeiten. | Früh beginnen, konsequent ausbauen |
Besonders Eloquent verleitet dazu, jede Datenbankabfrage direkt in eine Controller-Methode zu schreiben. Für kleine Übungen ist das akzeptabel. In produktiven Anwendungen solltest du auf verständliche Abfragen, passende Indizes und möglichst wenige Datenbankzugriffe achten.
Authentifizierung lässt sich über offizielle Starter-Kits einrichten. Trotzdem solltest du verstehen, was dahinter passiert. Ein fertiges Login ersetzt kein Wissen über Berechtigungen. Die Frage, ob ein Benutzer eine Ressource wirklich ändern darf, muss in Policies oder Gates ausdrücklich geprüft werden.
Deutschsprachige Lernquellen richtig auswählen
Die deutsche Lernlandschaft zu Laravel ist nützlich, aber uneinheitlich. Es gibt ausführliche Einsteigerartikel, Videos und Kurse, während die aktuellsten Framework-Funktionen oft zuerst in englischer Sprache dokumentiert werden. Die beste Kombination besteht deshalb aus einem deutschsprachigen Einstieg und der offiziellen Laravel-Dokumentation für Versionsdetails.
Achte bei jedem Tutorial auf das Veröffentlichungsdatum und die verwendete Laravel-Version. Ein Artikel, der noch Laravel 8 oder 9 nutzt, kann die grundlegenden Ideen gut erklären, aber Befehle, Ordnerstrukturen oder Authentifizierung können inzwischen anders funktionieren. Gerade bei Composer-Fehlern ist eine veraltete Anleitung häufig die eigentliche Ursache.
Video, Text oder Kurs
- Texttutorials eignen sich, wenn du Befehle kopieren, vergleichen und später gezielt nachschlagen möchtest.
- Videos helfen bei der Einrichtung und zeigen Arbeitsabläufe, führen aber leicht zu passivem Zuschauen.
- Strukturierte Kurse lohnen sich, wenn du einen festen Zeitplan brauchst und Feedback oder Übungen wichtig sind.
- Die Dokumentation ist unverzichtbar, sobald du produktive Anwendungen baust oder eine Funktion genau verstehen musst.
Mein wichtigster Rat lautet, nicht fünf Tutorials parallel zu beginnen. Wähle einen Lernpfad, baue das Projekt selbst nach und ändere danach bewusst eine Funktion. Erst beim eigenständigen Umbau merkst du, ob du Routing, Datenmodelle und Views tatsächlich verstanden hast.
Typische Fehler bremsen den Einstieg unnötig aus
Viele Anfänger installieren zu viele Pakete, bevor überhaupt eine eigene Route funktioniert. Laravel bringt bereits sehr viel mit. Zusätzliche Admin-Panels, Frontend-Frameworks und Drittanbieterpakete erhöhen die Komplexität und machen Fehlersuche schwieriger.
Ein weiterer Klassiker ist die falsche Konfiguration der .env-Datei. Datenbankname, Zugangsdaten, Cache und Mail-Einstellungen gehören in die Umgebung und nicht fest in den Quellcode. Nach Änderungen an der Konfiguration kann ein geleerter Konfigurations-Cache nötig sein.
php artisan optimize:clearAuch die Begriffe Route, Controller, Model und View werden anfangs gern vermischt. Ich würde bei jedem Fehler zuerst den Weg einer Anfrage nachvollziehen. Kommt sie bei der richtigen Route an, ruft diese den erwarteten Controller auf, liefert der Controller die passenden Daten und verwendet die View die korrekten Variablen?
Vergiss außerdem die Sicherheit nicht. Verwende Validierung, CSRF-Schutz, Policies und escaped Ausgaben von Beginn an. Eine Anwendung, die nur im lokalen Browser funktioniert, ist noch kein fertiges Produkt.
Lesen Sie auch: GET-Parameter verstehen und sicher in URLs nutzen
Ein realistischer Lernplan
- Tag 1 bis 2 reservierst du für PHP-Version, Composer, Laravel-Installation und die Projektstruktur.
- Tag 3 bis 5 baust du Routes, Controller, Blade-Layouts und eine einfache Datenbanktabelle.
- Woche 2 ergänzt du Formulare, Validierung, Bearbeitung, Löschung und Fehlermeldungen.
- Woche 3 lernst du Benutzerkonten, Policies, Beziehungen zwischen Models und grundlegende Tests.
- Woche 4 verbesserst du die Anwendung mit Pagination, Suchfunktion, sauberem Error Handling und einem kleinen Deployment-Test.
Dieser Plan setzt ungefähr 60 bis 90 Minuten an fünf Tagen pro Woche voraus. Mehr Zeit beschleunigt den Fortschritt, ersetzt aber nicht das eigene Schreiben von Code. Wenn du nur Videos konsumierst, wächst dein Gefühl für Laravel langsamer als deine Wiedergabeliste.
Der nächste sinnvolle Schritt nach dem ersten CRUD-Projekt
Nach dem Notizbuch sollte dein nächstes Projekt ein echtes Problem lösen, zum Beispiel ein internes Aufgabenboard, ein Terminplaner oder eine kleine Wissensdatenbank. Wähle bewusst einen Umfang, den du in zwei bis vier Wochen fertigstellen kannst. Ein abgeschlossenes kleines Projekt bringt dir mehr als ein begonnenes Großsystem.
Arbeite dabei nicht nur an neuen Funktionen. Ergänze Tests, dokumentiere deine wichtigsten Entscheidungen und prüfe, wie die Anwendung mit ungültigen Eingaben, fehlenden Datensätzen und nicht berechtigten Benutzern umgeht. Genau an diesen Stellen trennt sich ein Tutorial-Projekt von einer belastbaren Webanwendung.
Wer Laravel auf Deutsch lernt, darf die Sprache als Einstieg nutzen, sollte aber technische Begriffe und die englische Originaldokumentation nicht dauerhaft meiden. Mit einer aktuellen Laravel-Version, einem überschaubaren Projekt und regelmäßigem eigenem Üben entsteht daraus ein Lernweg, der auch über die ersten Beispiele hinaus trägt.