The idea is to be able to have a "match many" parameter when defining routes. This would allow the ability to pass any number of segments as an array to an action.
Example:
Define a route to match controller/action/names/[]/foo/bar where the [] would be a place-holder marker that matches any number of segments until the one after it is matched (in this case foo).
This would then be passed to the action like so:
public function action_action($names, $foo, $bar){}
$names would then be an array populated with anything that is found between the names and foo segment, or an empty array if none where matched.
A route such as controller/action/names/tom/dick/harry/foo/bar would pass the parameters below to the action.
$names = array('tom', 'dick', 'harry');
$foo = 'foo';
$bar = 'bar';
This could then also work with multiple array segments: controller/action/names/[]/ages/[] to pass multiple arrays to the action.
The idea is to be able to have a "match many" parameter when defining routes. This would allow the ability to pass any number of segments as an array to an action.
Example:
Define a route to match
controller/action/names/[]/foo/barwhere the[]would be a place-holder marker that matches any number of segments until the one after it is matched (in this casefoo).This would then be passed to the action like so:
$nameswould then be an array populated with anything that is found between thenamesandfoosegment, or an empty array if none where matched.A route such as
controller/action/names/tom/dick/harry/foo/barwould pass the parameters below to the action.This could then also work with multiple array segments:
controller/action/names/[]/ages/[]to pass multiple arrays to the action.