$router->map('/', 'users#index');
// or somewhat more complicated
- $router->map('/users/:id/edit/', array('controller' => 'SomeController', 'action' => 'someAction'), array('methods' => 'GET,PUT', 'name' => 'users_edit'));
+ $router->map('/users/:id/edit/', array('controller' => 'SomeController', 'action' => 'someAction'), array('methods' => 'GET,PUT', 'name' => 'users_edit', 'filters' => array('id' => '(\d+)')));
// You can even specify closures as the Route's target
$router->map('/hello/:name', function($name) { echo "Hello $name."; });
require 'Route.php';
$router = new Router();
+
$router->setBasePath('/PHP-Router');
$router->map('/', 'someController:indexAction', array('methods' => 'GET'));
-$router->map('/:slug', array('myparam' => 'myvalue'), array('name' => 'my_route_name'));
-$router->map('/users/:id/edit/', 'users#edit', array('methods' => 'GET', 'name' => 'users_edit'));
-$router->map('/contact/',array('controller' => 'someController', 'action' => 'contactAction'), array('name' => 'contact'));
$router->map('/users/','users#create', array('methods' => 'POST', 'name' => 'users_create'));
-$router->map('/user.list/','users#list', array('methods' => 'GET', 'name' => 'users_list'));
-$router->map('/path-with-hyphens', 'some#target');
-$router->map('/site-section/:path/','some#target',array( 'filters' => array( 'path' => '(.*)') ) );
+$router->map('/users/:id/edit/', 'users#edit', array('methods' => 'GET', 'name' => 'users_edit', 'filters' => array('id' => '(\d+)')));
+$router->map('/contact/',array('controller' => 'someController', 'action' => 'contactAction'), array('name' => 'contact'));
+
+$router->map('/blog/:slug', array('c' => 'BlogController', 'a' => 'showAction'));
+
+// capture rest of URL in "path" parameter (including forward slashes)
+$router->map('/site-section/:path','some#target',array( 'filters' => array( 'path' => '(.*)') ) );
$route = $router->matchCurrentRequest();
?><h3>Current URL & HTTP method would route to: </h3>
<?php if($route) { ?>
+ <strong>Target:</strong>
<pre><?php var_dump($route->getTarget()); ?></pre>
+
+ <strong>Parameters:</strong>
<pre><?php var_dump($route->getParameters()); ?></pre>
<?php } else { ?>
<pre>No route matched.</pre>