Laravel ist ein freies PHP-Webframework, das dem MVC-Muster folgt. Es gehört mittlerweile zu einem der beliebtesten, sowie bekanntesten Frameworks für die Skriptsprache PHP.
Es wurde 2011 von Taylor Otwell, inspiriert durch .NET und Ruby on Rails, initiiert.
Code-Beispiel
Ausführung jeden Freitag um 13:37 Uhr
$schedule->call(function (){}) ->weekly()->fridays()->at('13:37');
Stündliche Ausführung an Wochentagen (Mo. – Fr.) von 10:00 – 13:37 Uhr
$schedule->command('foo') ->weekdays() ->hourly() ->timezone('Europe/Berlin') ->between('10:00', '13:37');
@taylorotwell Is Laravel a MVC framework?
— Duilio Palacios (@Sileence) August 20, 2015
@Sileence eh not really
— Taylor Otwell (@taylorotwell) August 20, 2015
Laravel selbst behauptet zwar kein MVC Framework zu sein, wobei hier jedoch der eigentliche Aufbau über Models, Views und Controllern vorhanden ist.
„MVC is just a tip of the iceberg. Laravel allows you to create apps using MVC pattern, but the framework itself is much more complicated.
Laravel 4 had models, controllers and views folder, but 5 does not because it’s not only MVC (e.g. controllers are a part of the HTTP layer — containing Middleware, Requests and Responses, etc). That said, you can see there are much more layers, not only M V and C.
But, the application you build is mostly wrapped around MVC pattern because most of the time, you don’t even need anything below the surface.
Organize and structure apps in the way that solves your problems.“
ORM
Mit dem Eloquent ORM integriert Laravel einen sehr mächtigen und einfach verständlichen Datenbank Mapper.
$userAll = User::all(); $user1 = User::find(1);
Template Engine
Sobald man sein erstes Projekt erstellt hat, fällt einem sofort die welcome.blade.php Datei in dem views Ordner auf. Blade ist die von Laravel eigens integrierte Template Engine, mit welcher das Einbinden von PHP in den HTML Code, sowie vieler Shortcuts, möglich ist. Mit Blade erzeugte Views werden in reinen PHP-Code kompiliert und im Cache gespeichert, bis diese modifiziert werden, wodurch logischerweise auch die Last des Servers geschont wird. Mit Blades ist somit ein übersichtlicheres Arbeiten möglich.
Beispiel
@if(Auth::check()) // HTML Code, wenn der Benutzer eingeloggt ist. @else // HTML Code, wenn der Benutzer nicht eingeloggt ist. @endif
Mithilfe von Artisan CLI ist es dem Entwickler möglich, Laravel zu aktualisieren beziehungsweise Migrations Dateien zu erstellen.
Ein großer Vorteil von Laravel ist zudem die ausführliche Dokumentation, sowie eine umfangreiche Video-Bibliothek mit mehreren Hundert Videos, speziell zu Laravel, PHP, Testing, Javascript und Tooling.
Fazit
Für alle, die neu in Bereich PHP sind, kann man Laravel nur empfehlen, zumal Entwickler, die sich mit solchen Frameworks auskennen, auf dem Arbeitsmarkt gesucht werden.
Quellen:
laracasts.com