Seminarinformationen

Seminar - Ziel

In diesem 5-tägigen Seminar "Laravel Kompaktkurs" erweitern Sie Ihre Laravel-Kenntnisse durch praxisorientierte Anwendungen. Der Kurs deckt ein breites Spektrum ab, beginnend mit den Grundlagen wie der Erstellung von Laravel-Projekten, der Konfiguration über dotenv und dem Caching von Konfigurationen.

Sie lernen, wie Sie mit Eloquent ORM effektiv mit Datenbanken interagieren, einschließlich CRUD-Operationen, „Soft Deletes“ und der Arbeit mit verschiedenen Beziehungstypen. Ein weiterer Schwerpunkt liegt auf dem Erstellen und Verwenden von Middleware-Komponenten sowie dem Umgang mit dem Laravel CLI-Tool Artisan.

Im Verlauf des Kurses erfahren Sie, wie Sie Queues für die Stapelverarbeitung, das Mailing-System, das Eventsystem und den Task-Scheduler in Laravel einsetzen. Sie erhalten außerdem einen umfassenden Überblick über die Nutzung des HTTP-Clients, das Testen von Anwendungen und den Umgang mit File-Storage über Flysystem.

Ein weiteres Highlight des Kurses ist das Erlernen der Implementierung eines Rollen- und Rechtemanagements und der Verwendung von Laravel als API-Backend. Praktische Übungen und ein umfassendes Beispielprojekt helfen Ihnen dabei, das Gelernte direkt anzuwenden und Ihre Fähigkeiten zu vertiefen.

Teilnehmer - Zielgruppe

  • PHP-Entwickler

Kurs - Voraussetzungen

  • fundierte PHP Kenntnisse

Seminardauer

  • 5 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

Einleitung

  • Was ist Laravel, eine Beschreibung des Frameworks
  • Wie unterscheidet sich Laravel zu den anderen Frameworks

Grundlagen

  • Erstellung von Laravel-Projekten
  • Applikationsaufbau von Laravel-Projekten
  • Environmentvariablen
  • Konfiguration von Laravel mittels dotenv
  • Konfigurationsdateien und Abrufen der Werte
    • Environmentvariablen in Konfigurationsdateien
  • Caching von Konfigurationen
  • Dependency Injection

URLs, Routing, Request & Response in Laravel

  • API- und Webrouten
  • Routen mit und ohne Parametern erstellen
  • Routen Caching
  • Routen für GET, POST, PUT und DELETE Requests
  • Request Ablauf
    • Middelwares
    • Request Authorisierung
    • Request Validierung
  • Response-Typen (JSON/HTML)

Datenbankinteraktion

  • Migrationen
    • Aufbau von Migrationen
    • Datenbank auf- und abbauen
  • Seeding (Datenbank befüllen)
    • Model-Factories
  • CRUD mit Eloquent ORM
  • „Soft Deletes“ & Wiederherstellen von Datenbankeinträgen
  • Überblick zu den Datenbank-Beziehungstypen
    • 1 zu 1 Beziehungen
    • 1 zu N Beziehungen
    • N zu M Beziehungen
      • Arbeiten mit Pivot-Tabellen
    • Polymorphe Beziehungen
  • QueryBuilder ohne Modelle
  • Modelle mit unterschiedlichen Datenbanken verbinden
  • Transaktionen

Laravel CLI-Tool Artisan

  • Erstellen von Migrationen, Modellen, Controllern
  • Migrationen ausführen und Rückgängig machen
  • Commands ausführen
  • Eigene Konsolenbefehle/Commands erstellen
    • Commands ausführen

Middleware Komponenten

  • Bedeutung von Middleware für den Request Ablauf
  • Aktivierung & Deaktivierung von Middleware Komponenten
  • Erstellen von eigenen Middleware Komponenten

View: Laravel Template Engine: Blade

  • Erstellen/Rendern von Views
  • Datenübergabe an Views
  • Kontrollstrukturen
  • Einbinden von Subviews
  • Vererbung in Views
  • Erweitern von Views mit eigenen Methoden
  • Erstellen von Formularen
    • CSRF Schutz (Cross-site request forgery)
  • Anzeige von Fehlermeldungen im Frontend

Controller

  • Erstellen eines Controllers
  • Mapping von Routen auf Controller-Actions
  • Request-Datenverarbeitung in Controllern
  • Formulare und Request-Validierung
  • Dateiuploads und Dateimanagement

Error Handling & Logging

  • Exceptions-Logging
  • Exception-Handling
  • Eloquent-Exceptions
  • Logging in Laravel

Registrierung, Login, Sessions & Sicherheit

  • Lesen & Schreiben von Session-Daten in Laravel
    • „Flash“ Datenanzeige über die Session
  • Hashing & Verschlüsselung
  • Realisierung einer Registrierungs- und Login-Funktionalität
    • Laravel Fortify vs. Laravel Starter Kits
    • E-Mail Verifikation
  • Authentifizierung vs. Autorisierung

Queues

  • Nutzen von Laravel Queues
  • Konfiguration von Queues
  • Queues zur Stapelverarbeitung nutzen
  • Queues mit Laravel Scheduler zeitgesteuert ausführen

Mailing

  • E-Mail-Templates erstellen
  • E-Mails mit Markdown erstellen
  • E-Mails versenden
  • E-Mails mit Anhängen
  • Mail-Versand queuen

Eventsystem

  • Events & Listener
    • Events werfen
    • Events abfangen
    • Event-Parameter
    • Events mit Queues kombinieren
  • EventSubcriber
    • Unterschied EventSubcriber und EventListsner
    • Wann sollten Sie was benutzen

Task-Scheduling

  • Fluent-Schedueling API
  • Tasks periodisch ausführen
  • Tasks in queues ausführen
  • Einen Task nicht gleichzeitig ausführen

Laravel HTTP-Client

  • Nutzen des Clients
  • Anfragen an externe Dienste

Laravel als API-Backend

  • Unterscheidung Web-Framework (Full Stack) und reines API-Backend
  • API-Routen und -Controller definieren
  • Verwenden von Form-Requests
  • API Token Management mittels Laravel Sanctum
  • API testen mittels HTTP-Client

Autorisierung

  • Rollen-Rechte-Management versus Authentifizierung
  • Gates und Policies konfigurieren
  • Zugriffsrechte im Projekt anwenden via Back- und Frontend

Testing in Laravel

  • Unit-Testing
  • Integrationstests
    • HTTP/API-Tests
    • Browser-Tests (Klicktests)

File-Storage mittels Flysystem

  • Überblick Flysystem und dessen Adapter
  • Zugriff auf lokale und entfernte Dateisysteme

Nutzen von Cache Backends mit Laravel

  • Zugriff auf Caches mit Laravel
  • Löschen von Cacheeinträgen
  • TTL für Cache-Einträge

Praxis / Übungen

  • Die einzelnen Abschnitte werden als Praxisübung vertieft und fügen sich im Verlauf des Seminars zu einem umfassenden Beispielprojekt zusammen.

Weitere Schulungen zu Thema PHP

PHP 7 Grundkurs

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

In dieser Schulung lernen Sie die Grundlagen für das Programmieren mit PHP kennen.

PHP 7 Fortgeschrittenenkurs

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

Mit dieser Schulung erwerben die Teilnehmer fortgeschrittene Kenntnisse in der PHP-Programmierung. Sie erlernen die Konzepte der objektorientierten Methodik und wie Sie diese Konzepte in der Sprache PHP realisieren.

PHP 8 Grundkurs

- u.a. in München, Zürich, Essen, Heidelberg, Marburg

In diesem 3-tägigen Schulung "PHP 8 Einsteigerkurs" lernen Sie die Grundlagen der Programmiersprache PHP kennen. Mit einer modernen Entwicklungsumgebung werden Sie befähigt, eigene Programme zu erstellen. Durch diese Programme erhalten Sie Einblicke in die ...

Webentwicklung mit Symfony - Kompaktkurs

- u.a. in Frankfurt am Main, Nürnberg, Zürich, Mannheim, Nordhausen

In diesem 4-tägigen Seminar "Webentwicklung mit Symfony - Kompaktkurs" erwerben Sie fundierte Kenntnisse in den grundlegenden Konzepten und wichtigen Tools von Symfony. Die Teilnehmer beginnen mit den Basisfunktionen und erweitern ihr Wissen schrittweise, indem sie ...