Doch wieso ist das so?
- Der Einstieg ist leicht
- Es nutzt die neusten Techniken
- Auf Sicherheit wird sehr viel wert gelegt
- Mit Laravel kann man dynamische Anwendungen sehr schnell entwickeln
Kernkonzepte
Service Container
Verwalten die Abhängigkeiten der einzelnen Klassen Artikel lesen
Service Providers
Registrierung von verschiedenen Dingen, wie Middleware, Event Listener oder auch Routen
Facades
Öffentliche Schnittstellen zu verschiedenen Funktionen
Contracts
Als Contracts werden die Interfaces bezeichnet, mit denen man Laravel erweitern kann.
HTTP-Ebene
Routing
Definiert, welche Url welche Aktion ausführt Artikel lesen
Middleware
Zum Definieren, was vor oder nach einem Seitenaufruf passiert. Dazu zählt zum Beispiel die Authentifizierung Artikel lesen
Controller
Bringen View und Model zusammen Artikel lesen
Request
Bietet alle Informationen der Anfrage (Parameter, Url,...) Artikel lesen
Responses
Unter anderem zum Setzen von HTTP-Headern
Session
Sessions lassen sich über Dateien, Cookies, Datenbank oder auch memcach / redis realisieren. Artikel lesen
Validation
Einfach, mit vielen Möglichkeiten Artikel lesen
Frontend
Views
Mit einfacher Datenübergabe als Array Artikel lesen
Blade Templates
Zur Strukturierung von verschiedenen Views Artikel lesen
Compiling Assets
Less, Sass, Stylus, Plain CSS, Webpack, Rollup, ... (Elixir)
Localization
Übersetzungen (PHP-Array, nicht Gettext)
Sicherheit
Authentication
Login-System
Authorization
Berechtigungs-System Artikel lesen
CSRF Protection
Über Tokens wird verhindert, dass XSS-Attacken ausgeführt werden können. Artikel lesen
Encryption
Verschlüsseln & Entschlüsseln über OpenSSL und AES-256-CBC
Hashing
basierend auf Bcrypt
Validation
Validierung von Eingaben Artikel lesen
Allgemeine Themen
Cache
über die Datenbank, memcached oder Redis
Events
Ganz gut, um die einzelnen Module unabhängiger voneinander zu machen. Artikel lesen
File Storage
Arbeitet mit dem lokalen Dateisystem, aber auch mit Amazon S3 und Rackspace
Mails können dabei eigene Views haben
Notifications
Versand von Benachrichtigungen per Mail, SMS, Slack,...
Queues
Aufgaben verzögert ausführen
Datenbanken
Query Builder
Datenbankabfragen ohne das Schreiben von SQL
Pagination
Sehr einfache Möglichkeit um Paginierungen herzustellen
Migrations
Datenbankänderungen dokumentieren und ausführen
Seeding
Zum Erstellen von Beispieldatensätzen (beim Aufsetzen von neuen Servern sinnvoll)
Redis
Interaktion mit Redis
Eloquent ORM
Relationships
Sehr schöne Möglichkeit Models miteinander zu verknüpfen Artikel lesen
Collections
Bietet verschiedene Funktionen zum Bearbeiten mehrerer Models Artikel lesen
Mutators
Zum Bearbeiten von einzelnen Eigenschaften beim Lesen / Speichern
Serialzation
Arrays oder JSON
Artisan Konsole
Befehle
Liste der wichtigsten Artisan-Befehle Artikel lesen
Task Scheduler
Crons mit Laravel nutzen Artikel lesen
Testverfahren
Application Testing
Testmöglichkeiten von verschieden Routen. Unterstützung von PHPUnit
Database
Testen, ob Datenbankänderungen erfolgreich durchgeführt wurden
Mocking
Zum Definieren von Tests, bevor dessen Funktion überhaupt existiert.
Offizielle Pakete
Cashier
Bezahl-Funktionen (Stripe / Braintree)
Dusk
Test-System für den Frontend-Bereich
Envoy
Deployment-System für Laravel
Horizon
Monitoring-System für Laravel
Passport
Scout
Socialite
OAuth-Authentifizieierung (Facebook, Twitter, Google,...)
Telescope
Telescope ist ein Tool zum Überwachen von Laravel-Anwendungen Artikel lesen
Weitere Themen
- Das Laravel Ökosystem
- Laravel mit Docker nutzen
- CMS-Lösungen mit Laravel
- Referenzen und Beispiele mit Laravel
- Laravel Bücher auf Deutsch und Englisch
- Laravel: Sind SQL-Injections möglich?
- Performance-Optimierung für Laravel
- Neuerungen in Laravel 6
- Wie werde ich Laravel Entwickler?
- Einführung in Interia.js