2015-09-20 68 views

回答

0

看來你可以覆蓋Slim\Slim構造函數並設置它將使用的路由器,或者你可以命名你所有的路由,然後通過Slim\Router::getNamedRoutes()方法訪問該集合。

<?php 
$application->get(
    '/api', 
    function() use ($application) { 
     $routes = []; 
     foreach ($application->router()->getNamedRoutes() as $route) { 
      $routes[] = $route->getPattern(); 
     } 
     $application->response->headers->set('Content-Type', 'application/json'); 
     echo json_encode([ 
      'total' => count($routes), 
      'routes' => $routes 
     ]); 
    } 
)->name('api'); 

這將響應。

{ 
    total: 1, 
    routes: [ 
     "/api" 
    ] 
}