Download the PHP package anax/router without Composer
On this page you can find all versions of the php package anax/router. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Package router
Short Description Anax Router module, route requests to handlers.
License MIT
Homepage https://dbwebb.se/anax
Informations about the package router
Anax Router
Anax Router module.
A standalone router supporting request methods and dynamic routes matching, extracting and validating arguments from path.
The router will try matching routes by the order they were added and execute all matching routes, one after the other.
Use exit()
to prevent further routes from being matched.
Install
Usage
Add some routes with handlers
Add multiple routes with one handler
Add multiple routes, through an array of rules, sharing a handler.
Add a default route
This route will match any path.
Add internal routes for 404, 403 and 500 error handling
Add an internal route that is called when no route can be matched.
You can add internal routes to deal with 403 and 500. These routes will handle uncaught exceptions thrown within a route handler.
The 403 internal route that is catching exception of type ForbiddenException
.
The 500 internal route that is catching exception of type InternalErrorException
.
Add a common route for any item below subpath using *
This route will match any item on the same level as about/*
.
Add a common route for any item below subpath using **
This route will match any item below about/**
, even subdirs.
Part of path as arguments to the route handler
You can send a part of the route as an argument to the handler. This makes a route handler more flexible and dynamic.
You can send multiple arguments.
Type checking of arguments
Apply type checking to the arguments to restrict a the routes being matched.
For type checking is digit, alpha, alphanum and hex supported (see ctype for details).
Routes per request method
A route can be setup to match only one request method.
A route can also match several request methods.
Dependency
These are the dependencies to other modules.
Module | What |
---|---|
anax/commons |
Using Anax\Commons\ContainerInjectableInterface. |
anax/commons |
Using Anax\Commons\ContainerInjectableTrait. |
License
This software carries a MIT license. See LICENSE.txt for details.