Ratings | | Unique User Downloads | | Download Rankings |
Not yet rated by the users | | Total: 76 | | All time: 10,171 This week: 86 |
|
Collaborate with this project | | Author |
Description This package can process HTTP requests using configured routes.
It can configure one or more routes by specifying a URL pattern to match, HTTP methods, and code that should be called when the current HTTP request matches that route.
The package can also process the current HTTP request and call the code associated to the route that matches the current request URL. | |
|
|
Innovation award
Nominee: 2x |
|
Example
<?php
include __DIR__.'/bootstrap.php';
$router = new \Abbadon1334\ATKFastRoute\Router(new \atk4\ui\App(['always_run' => false]));
$router->loadRoutes(__DIR__.'/config/routes.php', 'php-inline');
$router->run();
|
Details
atk4-fastroute
ATK4 integration with FastRoute
Still needs :
-
[x] more test for patterns route
-
[x] test for calls with extraparameters
-
[ ] check if can be simplified
-
[ ] add Translation as option
- [ ] add slugging of routes
-
[ ] check if can be added MiddlewareInterface
- [ ] to be executed by pattern (Another Router in Router that dispatch MW by route match) ?
- [ ] to be executed per route (before handlingRoute)?
-
[ ] add comments to public methods!!!
-
[ ] add documentation
EXPERIMENTAL
Define routes :
- RoutedCallable : as Callable
- RoutedUI : as atk4/ui/* Class to be added to the App
- RoutedMethod : as Class Method to be called like a controller
Routes can be serialized as array to allow loading from external file.
Using Interface implementation to define behaviour and needs of the class ( like flags ) :
- iBeforeRoutable : request method OnBeforeRoute which will be called right before OnRoute ( setting up app? )
- iAfterRoutable : request method OnAfterRoute which will be called right after OnRoute ( setup other elements? )
- iArrayable : have fromArray and toArray to be serializeable
- iNeedAppRun : if is needed to call ->app->run() after Routing method calls
Next step
-
Having a collection of routes, that in the future can be translatable
|
Applications that use this package |
|
No pages of applications that use this class were specified.
If you know an application of this package, send a message to the author to add a link here.