silencenjoyer/silence-routing
Composer 安装命令:
composer require silencenjoyer/silence-routing
包简介
Silence application routing system.
README 文档
README
The package provides a routing system that allows you to bind a route or group of routes to a specific incoming request.
This package is part of the monorepository silencenjoyer/silence, but can be used independently.
⚙️ Installation
composer require silencenjoyer/silence-routing
🚀 Quick start
Basic Usage
<?php declare(strict_types=1); use Silence\Routing\Router; use Silence\Routing\Matcher\HttpMatcher; use Silence\Routing\Group; use Silence\Routing\HttpRoute as Route; $group = Group::of([ Route::get('/', function () { echo 'This is success processed route.'; }), ]); $router = (new Router(new HttpMatcher())) ->registerRoutes($group->getRoutes()) ; $resolvedRoute = $router->resolve($request);
Advanced Usage
<?php declare(strict_types=1); namespace App\Routes; use App\Http\Controllers\SiteController; use Silence\Routing\RouteProviderInterface; use Silence\Routing\Group; use Silence\Routing\HttpRoute as Route; class SiteRouteProvider implements RouteProviderInterface { public function getRoutes(): array { return [ Group::of([ Route::get('/', function () { echo 'This is success processed route.'; }), ]), ]; } }
<?php declare(strict_types=1); use App\Routes\SiteRouteProvider; use Silence\Routing\RouteProviders\RouteProviderRegistry; use Silence\Routing\Router; use Silence\Routing\Matcher\HttpMatcher; $router = new Router(new HttpMatcher()); $registry = new RouteProviderRegistry($router); $registry ->withRoute(new SiteRouteProvider()) ->register() ; $resolvedRoute = $router->resolve($request);
🧱 Features:
- Support for PSR-15 middleware chains.
- Extracting route parameters from the path.
- Route resolving system.
- Named routes.
- Route groups.
- Binding routes to different HTTP request methods.
🧪 Testing
php vendor/bin/phpunit
🧩 Use in the composition of Silence
The package is used as the routing core in the Silence application.
If you are writing your own package, you can connect silencenjoyer/silence-routing to register and resolve routes with parameter substitution.
📄 License
This package is distributed under the MIT licence. For more details, see LICENSE.
silencenjoyer/silence-routing 适用场景与选型建议
silencenjoyer/silence-routing 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 15 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 07 月 18 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 silencenjoyer/silence-routing 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 silencenjoyer/silence-routing 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 15
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 7
- 依赖项目数: 4
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-07-18