firewox / f-routes
使用PHP属性生成精简路由的库
v2.0.0
2021-03-16 18:45 UTC
Requires
- php: >=8.0.0
- myclabs/php-enum: ^1.8
- php-di/php-di: ^6
- php-di/slim-bridge: ^3.1
- slim/psr7: 1.*
- slim/slim: 4.*
Requires (Dev)
This package is not auto-updated.
Last update: 2024-09-25 08:52:16 UTC
README
本项目创建的目的是
- 简化Slim路由的创建
- 使路由更易读、更易于理解
入门指南
- 安装composer包
- 注册路由处理器
- 添加控制器
- 添加中间件
安装
composer require firewox/f-routes
注册路由处理器
将以下代码放入您的 index.php
<?php
use DI\Container;
use Firewox\FRoutes\Factory;
$processor = Factory::create(
new Container(),
'Firewox\Tests\Controllers' /* Namespace for controllers */
);
// Run the Slim app
$processor->getApp()->run();
如果您还有Slim中间件,可以如下包含中间件命名空间
<?php
use DI\Container;
use Firewox\FRoutes\Factory;
$processor = Factory::create(
new Container(),
'Firewox\Tests\Controllers', /* Namespace for controllers */
'Firewox\Tests\Middlewares' /* Namespace for middlewares */
);
// Run the Slim app
$processor->getApp()->run();
创建路由控制器
等等等等
- 应用路由
- 分组路由
创建中间件
等等等等
- 应用中间件
- 分组中间件
- 路由中间件
属性文档
控制器属性
| 属性 | 描述 | 可能值 |
|---|---|---|
| isGroup | 是否为分组控制器。(默认: false) | true 或 false |
| pathPattern | Slim兼容的路由路径。(默认: '') | 任何有效的路径 |
| middlewares | Slim中间件类名。不一定带有Middleware属性。(默认: []) | 0或多个类名 |
路由属性
| 属性 | 描述 | 可能值 |
|---|---|---|
| methods | 有效的Slim HTTP方法。(必需) | POST, PUT, GET, PATCH, DELETE, OPTIONS |
| pathPattern | Slim兼容的路由路径。(必需) | 任何有效的路径 |
| name | 路由的名称。(默认: null) | 任何有效的名称 |
| default | 是否为应用级别的默认路由。**(默认: false)**。例如404默认路由。 | true 或 false |
| priority | 路由注册的顺序。多个路由可以具有相同的数字。(默认: 0) | 所需的任何数字 |
| middlewares | 中间件类名列表。不一定带有Middleware属性。(默认: []) | 0或多个类名 |
| group | 控制器类名。控制器类必须带有Controller属性,并设置isGroup = true。(默认: null) | 有效的类名 |
中间件属性
| 属性 | 描述 | 可能值 |
|---|---|---|
| priority | 中间件注册的顺序。多个中间件可以具有相同的数字。(默认: 0) | 所需的任何数字 |