38 lines
1.0 KiB
38 lines
1.0 KiB
<?php
|
|
|
|
namespace FastRoute;
|
|
|
|
interface RouteParser
|
|
{
|
|
/**
|
|
* Parses a route string into multiple route data arrays.
|
|
*
|
|
* The expected output is defined using an example:
|
|
*
|
|
* For the route string "/fixedRoutePart/{varName}[/moreFixed/{varName2:\d+}]", if {varName} is interpreted as
|
|
* a placeholder and [...] is interpreted as an optional route part, the expected result is:
|
|
*
|
|
* [
|
|
* // first route: without optional part
|
|
* [
|
|
* "/fixedRoutePart/",
|
|
* ["varName", "[^/]+"],
|
|
* ],
|
|
* // second route: with optional part
|
|
* [
|
|
* "/fixedRoutePart/",
|
|
* ["varName", "[^/]+"],
|
|
* "/moreFixed/",
|
|
* ["varName2", [0-9]+"],
|
|
* ],
|
|
* ]
|
|
*
|
|
* Here one route string was converted into two route data arrays.
|
|
*
|
|
* @param string $route Route string to parse
|
|
*
|
|
* @return mixed[][] Array of route data arrays
|
|
*/
|
|
public function parse($route);
|
|
}
|