strident/router

专为易用性和速度设计的路由组件。为Trident构建。

2.0.1 2015-02-22 17:38 UTC

This package is not auto-updated.

Last update: 2024-09-14 17:04:13 UTC


README

#Router Build Status Coverage Code Climate

专为易用性和速度设计的路由组件。为Trident构建。

##安装

通过Composer进行安装。将包添加到您的composer.json

$ composer require strident/router ~2.0

##使用

Strident Router包非常灵活,允许您交换组件以更容易地扩展它。要创建一个Router,请执行以下操作

use Strident\Router\RouteFactory;
use Strident\Router\RouteMatcher;
use Strident\Router\Router;

$factory = new RouteFactory();
$matcher = new RouteMatcher();
$router  = new Router($factory, $matcher);

从那里,您可以定义如下路由

$router->route("route_name", "/route/path/{parameter}/{placeholders}")
    ->target("GET", "FooController::getAction")
    ->target("POST", "FooController::postAction")
;

Routerroute()方法返回创建的Route的实例。然后,Route可以通过使用target()方法定义针对特定HTTP方法的目标。

要在Router中分发当前请求,请使用Routerdispatch()方法。

$matched = $router->dispatch("GET", "/route/path/1/2");

dispatch()的返回值是一个包含匹配路由信息的数组。这包括路由名称、请求方法、路径和参数(按名称和索引)。