PHP 快速需求路由:FastRoute
FastRoute 提供了一个快速实现基于路由的规则表达。
示例代码:
<?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; }
本文由用户 sdww 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
转载本站原创文章,请注明出处,并保留原始链接、图片水印。
本站是一个以用户分享为主的开源技术平台,欢迎各类分享!