fastpress/router
Composer 安装命令:
composer require fastpress/router
包简介
A simple yet powerful routing component for the Fastpress framework, enabling efficient HTTP routing in PHP applications.
README 文档
README
The Fastpress Router is a powerful and flexible routing system for PHP applications. It provides a simple and intuitive way to define routes, handle HTTP requests, and manage the flow of your web application.
Features
- Support for multiple HTTP methods (GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD)
- Route parameters with custom patterns
- Named routes for easy URL generation
- Route groups for shared attributes
- Middleware support
- Route constraints
- Optional parameters
- Conflict detection to prevent ambiguous routes
Installation
To use the Fastpress Router in your project, you can include it in your PHP files:
use Fastpress\Routing\Router; require_once 'path/to/Router.php';
Basic Usage
Defining Routes
$router = new Router(); // Define a simple GET route $router->get('/hello', function() { echo "Hello, World!"; }); // Define a POST route with parameters $router->post('/users/{id}', 'UserController@update');
Matching Routes
$match = $router->match($_SERVER, $_POST); if ($match) { $handler = $match['handler']; $params = $match['params']; // Execute the handler with the matched parameters // ... } else { // No matching route found // Handle 404 Not Found }
Advanced Usage
Route Groups
$router->group(['prefix' => 'admin', 'middleware' => ['auth']], function($router) { $router->get('/dashboard', 'AdminController@dashboard'); $router->get('/users', 'AdminController@users'); });
Named Routes
$router->get('/profile/{id}', 'ProfileController@show')->name('profile.show'); // Generate URL for named route $url = $router->getNamedRoute('profile.show', ['id' => 123]);
Custom Route Parameters
$router->addPattern('uuid', '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}'); $router->get('/users/{uuid}', 'UserController@show');
Middleware
$router->get('/admin/dashboard', 'AdminController@dashboard') ->middleware('auth');
Route Constraints
$router->get('/users/{id}', 'UserController@show') ->where(['id' => '\d+']);
Contributing
Contributions are welcome! Please feel free to submit a Pull Request. License This Fastpress Router is open-sourced software licensed under the MIT license.
fastpress/router 适用场景与选型建议
fastpress/router 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 76 次下载、GitHub Stars 达 0, 最近一次更新时间为 2024 年 02 月 13 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「framework」 「routing」 「php」 「http」 「router」 「fastpress」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 fastpress/router 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 fastpress/router 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 fastpress/router 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
PHP Framework HLEB2 is the foundation of the web application. Provides ease of development and application performance.
Write down your routing mapping at one place
Flight routing is a simple, fast PHP router that is easy to get integrated with other routers.
Client for Google Directions API to add interpolated points to a route consisting of given coordinates.
Alfabank REST API integration
A router designed for web requests for the Monolith framework
统计信息
- 总下载量: 76
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 9
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-02-13