Wie Sie erklären, dass Sie die Controller-Aktionen kennen müssen, scheint es, dass die Aktionen bereits Routen zugeordnet sind, was bedeutet, dass Sie die Routen verwenden können, um die Liste der zugeordneten Controller und Aktionen abzurufen. Der folgende Code wird ein Array der registrierten Route Controller-Aktionen erzeugen:
$controllers = [];
foreach (Route::getRoutes()->getRoutes() as $route)
{
$action = $route->getAction();
if (array_key_exists('controller', $action))
{
// You can also use explode('@', $action['controller']); here
// to separate the class name from the method
$controllers[] = $action['controller'];
}
}
Diese Routen ignorieren, die Verschlüsse abgebildet haben, die Sie nicht brauchen. Wohlgemerkt, Sie müssen eventuell Übereinstimmungen von Routen filtern, die von Drittanbieter-Paketen registriert wurden.
Was möchten Sie erreichen, einige Web-Service-Sachen? –
Hi @KA_lin Ich baue ein zugriffsbezogenes System, in dem ich den Zugriff auf Aktionen und Controller auf Rollenbasis erlauben möchte. Ich werde einen Bildschirm haben, in dem super admin Controller und entsprechende Aktion auswählen kann und die bestimmte Rolle Zugriff auf diese Route erhält. – Deejay
Dies könnte Ihre Frage von einem kurzen lesen beantworten: http://StackOverflow.com/Questions/16672064/Laravel-Roles-and-Authentication-to-Routes –