FastRoutePHP 快速需求路由
FastRoute 提供了一個(gè)快速實(shí)現(xiàn)基于路由的規(guī)則表達(dá)。
示例代碼:
<?php
require '/path/to/FastRoute/src/bootstrap.php';
$dispatcher = FastRoute\simpleDispatcher(function(FastRoute\RouteCollector $r) {
$r->addRoute('GET', '/user/{id:\d+}', 'handler1');
$r->addRoute('GET', '/user/{id:\d+}/{name}', 'handler2');
// Or alternatively
$r->addRoute('GET', '/user/{id:\d+}[/{name}]', 'common_handler');
});
$routeInfo = $dispatcher->dispatch($httpMethod, $uri);
switch ($routeInfo[0]) {
case FastRoute\Dispatcher::NOT_FOUND:
// ... 404 Not Found
break;
case FastRoute\Dispatcher::METHOD_NOT_ALLOWED:
$allowedMethods = $routeInfo[1];
// ... 405 Method Not Allowed
break;
case FastRoute\Dispatcher::FOUND:
$handler = $routeInfo[1];
$vars = $routeInfo[2];
// ... call $handler with $vars
break;
}評(píng)論
圖片
表情
