dart_roman / router
v1.0.5
2018-12-06 17:55 UTC
Requires
- php: ^7.0
README
用于PHP Web应用程序的路由器类,允许构建应用程序的路由映射。
概述
该类支持通过4个简单方法构建与4个主要HTTP方法相关联的路由:get()
、post()
、put()
、delete()
。每个方法接受最多3个参数
endpoint
- 根据原则Controller@action
构建的访问点rule
- 用于匹配路由访问点的规则,例如calendar/edit
calendar/get-dates/{year}
match
- 用于参数化路由元素(可选参数)的规则集,例如['year' => '\d{4}']
要启动路由器,只需两行代码 use DartRoman\Route;
Route::start();
路由分组
所有路由都可以按文件逻辑分组。为此,所有文件都必须位于同一个文件夹中(默认为routes
),并包含类。
扩展
可以通过从类继承来重写所有基本设置,具体如下
$prefix
- 控制器命名空间的前缀$separator
- 前缀和类名称之间的分隔符$routesDirectory
- 路由文件夹的路径
使用示例
文件 routes/calendar.php
<?php
use DartRoman\Route;
Route::get('Calendar@show', 'calendar');
Route::get('Calendar@getDates', 'calendar/get-dates/{year}', ['year' => '\d{4}']);
Route::post('Calendar@edit', 'calendar/edit');
所有路由都与 Calendar
类交互。其中每个路由都对应以下方法
public function show()
public function getDates(int $year)
(属性$year
自动从url
传递到方法)public function edit()