datapp/router

简单的PSR-7正则表达式路由器

1.1.0 2021-04-01 07:23 UTC

This package is not auto-updated.

Last update: 2024-09-27 00:25:42 UTC


README

这个路由器库使用正则表达式进行路由,兼容PHP标准建议7(HTTP消息接口)、15(HTTP处理器)和17(HTTP工厂)。

安装

composer require datapp/router

使用方法

<?php

require 'vendor/autoload.php';

$router = new Router(new Dispatcher());
// route without middlewares
$router->addRoute(Route::create('GET', '/^(help)$/', new Help($responseFactory, $streamFactory)));
// route with middlewares
$router->addRoute(Route::create('POST', '/^(login)$/', new Login($responseFactory, $streamFactory))
                ->withMiddleware(new SessionMiddleware(), new AuthMiddleware()));
// using variables (named groups) in regex
$router->addRoute(Route::create('GET', '/^(user)\/(?<id>[\d]+)$/', new UserShow($responseFactory, $streamFactory))
                ->withMiddleware(new SessionMiddleware(), new AuthMiddleware()));