Routing is a mechanism which allows to map HTTP request to a controller's action.
With routing, ZF3 knows which of the controller's action method to execute
as the result of the request. For example, you can map "http://localhost/" URL to IndexController::indexAction()
method,
and "http://localhost/about" URL to IndexController::aboutAction()
method.
You define the mapping between URLs and controllers with the help of routes.
There are several standard route types provided by Zend Framework 3 (shown in table 5.1).
These route types are implemented as classes living in the Zend\Router\Http
namespace.
Route Type | Description |
---|---|
Literal | Exact matching against the path part of a URL. |
Segment | Matching against a path segment (or several segments) of a URL. |
Regex | Matching the path part of a URL against a regular expression template. |
Hostname | Matching the host name against some criteria. |
Scheme | Matching URL scheme against some criteria. |
Method | Matching an HTTP method (e.g. GET, POST, etc.) against some criteria. |
Each route type in the table above (except the Method type) may be matched against a specific part (or several parts) of a URL. The Method route type is matched against the HTTP method (either GET or POST) retrieved from HTTP request.