Implementierung des Schließungsroutings


Abschlussdefinition

Wir können Abschlüsse verwenden, um einige Routen mit besonderen Anforderungen zu definieren, ohne die Betriebsmethode des Controllers auszuführen, zum Beispiel:

Route::get('hello', function () {
    return 'hello,world!';
});

Parameterübergabe

unterstützt die Parameterübergabe, wenn der Abschluss definiert ist, zum Beispiel:

Route::get('hello/:name', function ($name) {
    return 'Hello,' . $name;
});

Der Name der im Regelrouting definierten dynamischen Variablen Dies sind die Parameternamen in der Abschlussfunktion, in keiner bestimmten Reihenfolge.

Wenn also die URL-Adresse, die wir besuchen, lautet:

http://serverName/hello/thinkphp

, lautet die Ergebnisausgabe des Browsers:

Hello,thinkphp

Abhängigkeitsinjektion

Sie können die Abhängigkeitsinjektion in Abschlüssen verwenden, zum Beispiel:

Route::rule('hello/:name', function (Request $request, $name) {
    $method = $request->method();
    return '[' . $method . '] Hello,' . $name;
});