Projekte mit Laravel – Teil 1 – Der Einstieg

Tutorial zum Laravel Framework mit einer Schritt für Schritt Anleitung. Teil 1 beschreibt kurz einige Konzepte und die Installation.

Zielgruppe

Dieses Laravel Tutorial richtet sich an PHP Entwickler mit fortgeschrittenen Kenntnissen. Es wird vorausgesetzt, dass Sie den grundlegenden Umgang mit einer (lokalen) Entwicklungsumgebung kennen. Auch OOP sollte ihnen gut geläufig sein, um den Inhalten des Tutorials gut folgen zu können.

Einführung

Laravel ist ein mächtiges PHP-Framework, das ich neu für mich entdeckt habe. Seit 2011 wird es ständig weiterentwickelt. In der aktuellen Version (5.6) verfügt es bereits von Hause aus über viele Funktionen wie das ORM namens „Eloquent“, einem Templating-System namens „Blade“, Routing und vielen Dingen mehr. Laravel ist MVC konform und kann daher flexibel als Kickstartgrundlage für ein Webprojekt genutzt werden.

Die Dokumentation ist zu finden unter http://www.laravel.com. Außerdem gibt es Video-Tutorials, einige davon auch kostenlos, unter http://www.laracasts.com. Gerade die Einführung Laravel 5.4 from Scratch ist bestens geeignet für einen schnellen Start.

Einige der grundlegenden Konzepte werden in diesem Tutorial dargestellt. Dieses Tutorial bezieht sich auf die Version 5.6 von Laravel!

Installation: Composer

Um mit Laravel loszulegen, empfiehlt sich zunächst die Installation von Composer. Auf die Installation werde ich an dieser Stelle nicht näher eingehen. Bevor wir loslegen müssen aber die Voraussetzungen unseres Servers stimmen:

    • PHP >= 7.1.3
    • OpenSSL PHP Extension
    • PDO PHP Extension
    • Mbstring PHP Extension
    • Tokenizer PHP Extension
    • XML PHP Extension
    • Ctype PHP Extension
    • JSON PHP Extension

Für einen noch einfacheren Start empfiehlt sich die Einrichtung der virtuellen Maschine Homestead. Hier sind alle Voraussetzungen erfüllt. Auf die Einrichtung werde ich an dieser Stelle nicht näher eingehen.

Sind alle Voraussetzungen erfüllt, kann es losgehen. In der Konsole wechseln wir in das root-Verzeichnis unseres Webservers, wo der Projektordner liegen soll. Mit folgendem Kommando weisen wir Composer an ein Laravel-Projekt zu erstellen:

Dabei werden die entsprechenden Pakete geladen und Abhängigkeiten aufgelöst. Der Ordner my_project wird erstellt. Darin befinden sich unsere Projektdateien. Schon jetzt können wir unser Projekt aufrufen. Dazu muss der /public Ordner im Projektverzeichnis aufgerufen werden, dort liegt unsere index.php. Ein Aufruf könnte dann so erfolgen:

Noch schöner wird es mit einem entsprechenden vhost z.B. „project.local“ der auf diesen Ordner verweist. Dann ist der Aufruf über die folgende Adresse möglich.

Wie man vhosts anlegt hängt von der Serverumgebung und der eingesetzten Software ab. Ich werde an dieser Stelle nicht näher darauf eingehen.

Erste Schritte

Nun haben wir bereits ein lauffähiges Projekt. Eine Datenbank ist allerdings noch nicht eingerichtet. Bis auf eine statische Startseite kann unser Projekt noch nicht soviel.

Laravel bringt einige tolle Tools mit. Darunter ein Kommandozeilen-Tool namens artisan. Hiermit können viele Aufgaben schnell erledigt werden. So können Migrations (Datenbank-Tabellen) erstellt werden,  Controller- und Modell-Klassen erstellt werden und vieles mehr. Details dazu finden sich in der offiziellen Dokumentation, die im Übrigen erstklassig ist.

In unserer offenen Konsole wechseln wir nun in unser Projektverzeichnis my_project. Dort suchen wir die Datei .env und öffnen diese. Hier können wir zunächst unsere Zugangsdaten für die Datenbank hinterlegen.

Selbstverständlich muss dafür zunächst eine Datenbank angelegt werden. Dies kann z.B. bequem mit phpMyAdmin erfolgen. Wie ein Datenbanksystem installiert wird und wie phpMyAdmin eingerichtet und verwendet wird, wird hier nicht beschrieben.

In der .env Datei finden wir einen Abschnitt wo die Zugangsdaten eingetragen werden können:

Ist dies erledigt können wir die erste Migration vornehmen, denn Laravel bringt bereits ein paar Tabellen mit …

Erste Migration

Bei der ersten Migration taucht manchmal dieser Fehler auf:

Dies ist ein bekanntes „Problem“ mit älteren  Versionen von MySQL (< 5.7.7) und MariaDB (< 10.2.2) und wird auch in der Dokumentation samt Lösungsvorschlag beschrieben und gelöst:

weiter zu: Projekte mit Laravel – Teil 2 – Authentifizierung und Autorisierung mit Rollen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.