info@a-coding-project.de

Laravel Routing: Übersicht

Das Routing entscheidet, welche Aktion bei welcher Url ausgeführt wird. So kann man im einfachsten Fall einfach eine View anzeigen. Dabei lassen sich unter anderem für GET und POST verschiedene Aktionen zuweisen. Auch Variablen in der Url lassen sich einfach nutzen: Sie werden dann zum Beispiel automatisch als Parameter in einer Methode übergeben.

Natürlich ist es auch möglich komplexere Routing-Regeln festzulegen. Dafür lassen sich reguläre Ausdrücke einsetzen.

Routing-Dateien

Die Routen werden in Laravel im Ordner /routes gespeichert. Nach der Installation sind bereits erste Routen vorhanden:

  • api.php: Routen für REST-APIs
  • channels.php: Definition von Broadcasting-Channels
  • console.php: Definition von Artisan-Befehlen
  • web.php: Reguläres HTTP-Routing

web.php: Reguläres HTTP-Routing

Die wichtigste Datei beim Routing in Laravel ist die web.php.
So sieht die Datei zu Beginn aus:

<?php
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', function () {
    return view('welcome');
});

Variablen in der Route übergeben

Mit geschweiften Klammern kann man hier nun Variablen übergeben:

<?php
Route::get('/{name}', function ($name) {
    die("Hallo ".$name);
});

Wenn man nun /stefan aufruft, bekommt man "Hallo Stefan" zurück.

Man kann nach belieben weitere Parameter einfügen:

<?php
Route::get('/{name}/{city}', function ($name, $city) {
    die("Hallo ".$name." aus ".$city);
});

Post statt Get

Mit Route::get werden nur GET-Anfragen entgegen genommen. Das Absenden von POST-Formularen wäre hier nicht erlaubt. Um das zu ändern, kann man statt Route::get einfach Route::post nutzen.

Laravel Entwickler gesucht?

Wir haben bereits viel Erfahrung im Umgang mit Laravel und Vue.js.
Nehmen Sie gerne unverbindlich Kontakt zu uns auf.

zum Angebot

Über uns

Stefan Wienströer

Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project

Auch interessant