MulticheckMulticheck Domainsuche

Laravel

Definitionen und Erklärungen zu Laravel

Startseite > Glossar > Laravel

Laravel – Das elegante PHP-Framework für Webanwendungen

Laravel ist ein freies, Open-Source PHP-Webframework, das für die Entwicklung von Webanwendungen nach dem Model-View-Controller (MVC)-Architekturmuster konzipiert wurde. Es zeichnet sich durch eine ausdrucksstarke und elegante Syntax aus, die Entwicklern hilft, Aufgaben wie Routing, Authentifizierung, Sitzungsverwaltung und Caching zu vereinfachen.

Ein Blick in die Geschichte von Laravel

Laravel wurde von Taylor Otwell entwickelt und im Juni 2011 erstmals veröffentlicht. Otwell strebte an, eine fortschrittlichere Alternative zum CodeIgniter-Framework zu schaffen, das bestimmte Funktionen wie die eingebaute Unterstützung für Benutzer-Authentifizierung und -Autorisierung nicht bot. Seit seiner Einführung hat Laravel mehrere bedeutende Versionen durchlaufen:

  • Laravel 1 (Juni 2011): Einführung mit grundlegenden Funktionen wie Authentifizierung, Lokalisierung, Modellen, Views, Sitzungen und Routing.
  • Laravel 2 (September 2011): Einführung von Controllern, wodurch es zu einem vollständigen MVC-Framework wurde, sowie Unterstützung für Inversion of Control (IoC) und das Blade-Templating-System.
  • Laravel 3–10: Stetige Erweiterungen wie Artisan (CLI), Eloquent ORM, Blade-Templates, Flysystem, Job-Queues, Jetstream, und viele weitere Funktionen.
  • Laravel 11 (März 2024): Einführung von Laravel Reverb, einem WebSocket-Server, und weiteren Verbesserungen.

Laravel 12 – Was kommt als Nächstes?

Laravel 12 wird voraussichtlich im ersten Quartal 2025 erscheinen (zwischen Januar und März). Die neue Version wird mit weiteren Verbesserungen und Funktionen für Entwickler erwartet, um die Arbeit mit dem Framework noch effizienter zu machen. Entwickler könnten es wie gewohnt mit Composer installieren:

composer create-project --prefer-dist laravel/laravel projektname "12.*"

Der Aufbau der Laravel-Syntax

Laravel legt großen Wert auf eine saubere und lesbare Syntax. Einige der Schlüsselelemente sind:

  • Routing: Definiert die Antwort des Systems auf eine bestimmte URL. Beispiel:
    Route::get('/welcome', function () {
        return view('welcome');
    });
  • Controller: Organisiert die Logik der Anwendung. Beispiel:
    class UserController extends Controller
    {
        public function index()
        {
            $users = User::all();
            return view('user.index', compact('users'));
        }
    }
  • Blade-Templating: Ermöglicht die Verwendung von Templates mit einfacher Syntax. Beispiel:
    <!-- resources/views/user/index.blade.php -->
    <h1>User List</h1>
    <ul>
        @foreach ($users as $user)
            <li>{{ $user->name }}</li>
        @endforeach
    </ul>
  • Eloquent ORM: Bietet eine einfache ActiveRecord-Implementierung für die Arbeit mit der Datenbank. Beispiel:
    $user = User::find(1);
    echo $user->email;

Typische Anwendungen und Beispielcode

Laravel wird häufig für die Entwicklung von Webanwendungen wie Content-Management-Systemen (CMS), E-Commerce-Plattformen und RESTful-APIs verwendet. Ein typisches Beispiel ist eine Aufgabenliste (To-Do-App):

// Route in routes/web.php
Route::get('/tasks', [TaskController::class, 'index']);
Route::post('/tasks', [TaskController::class, 'store']);
Route::delete('/tasks/{task}', [TaskController::class, 'destroy']);

// Controller: app/Http/Controllers/TaskController.php
class TaskController extends Controller
{
    public function index()
    {
        $tasks = Task::all();
        return view('tasks.index', compact('tasks'));
    }

    public function store(Request $request)
    {
        $request->validate(['name' => 'required']);
        Task::create($request->only('name'));
        return redirect('/tasks');
    }

    public function destroy(Task $task)
    {
        $task->delete();
        return redirect('/tasks');
    }
}

// Blade View: resources/views/tasks/index.blade.php
<h1>Task List</h1>
<form method="POST" action="/tasks">
    @csrf
    <input type="text" name="name" required>
    <button type="submit">Add Task</button>
</form>
<ul>
    @foreach ($tasks as $task)
        <li>
            {{ $task->name }}
            <form method="POST" action="/tasks/{{ $task->id }}" style="display:inline">
                @csrf
                @method('DELETE')
                <button type="submit">Delete</button>
            </form>
        </li>
    @endforeach
</ul>

Dieses Beispiel demonstriert die grundlegende Verwendung von Routing, Controllern, Blade-Templates und Eloquent ORM in Laravel.

Warum Laravel? – Vorteile des Frameworks

Laravel bietet zahlreiche Vorteile, die es zu einem der beliebtesten PHP-Frameworks machen:

  • Elegante Syntax und einfache Entwicklung.
  • Starke Community und umfangreiche Dokumentation.
  • Integrierte Sicherheitsfunktionen wie Schutz vor CSRF und SQL-Injection.
  • Flexibilität durch eine Vielzahl von Erweiterungen und Paketen.

Alle Angaben ohne Gewähr.

Preise inkl. MwSt. Angebote sind zeitlich begrenzt verfügbar und teilweise an Mindestvertragslaufzeiten gebunden.