namespace Ice\Mvc\Route\Parser; interface ParserInterface { /** * 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); }