forked from dannyvankooten/PHP-Router
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexample.php
31 lines (26 loc) · 1.7 KB
/
example.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
require 'Router.php';
require 'Route.php';
$router = new Router();
$router->setBasePath('/PHP-Router');
$router->map('/', 'someController:indexAction', array('methods' => 'GET'));
$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('/users/','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' => '(.*)') ) );
$route = $router->matchCurrentRequest();
?><h3>Current URL & HTTP method would route to: </h3>
<?php if($route) { ?>
<pre><?php var_dump($route->getTarget()); ?></pre>
<pre><?php var_dump($route->getParameters()); ?></pre>
<?php } else { ?>
<pre>No route matched.</pre>
<?php } ?>
<h3>Try out these URL's.</h3>
<p><a href="<?php echo $router->generate('users_edit', array('id' => 5)); ?>"><?php echo $router->generate('users_edit', array('id' => 5)); ?></a></p>
<p><a href="<?php echo $router->generate('contact'); ?>"><?php echo $router->generate('contact'); ?></a></p>
<p><form action="" method="POST"><input type="submit" value="Post request to current URL" /></form></p>
<p><form action="<?php echo $router->generate('users_create'); ?>" method="POST"><input type="submit" value="POST request to <?php echo $router->generate('users_create'); ?>" /></form></p>
<p><a href="<?php echo $router->generate('users_list'); ?>">GET request to <?php echo $router->generate('users_list'); ?></p>