Added leading slash to routes

This commit is contained in:
Chris 2017-10-25 08:25:13 +02:00
parent 11d0aa2c7a
commit 8699df0060
2 changed files with 17 additions and 17 deletions

View File

@ -9,11 +9,11 @@ class Route{
public static function init(){ public static function init(){
$parsed_url = parse_url($_SERVER['REQUEST_URI']);//Parse Uri $parsed_url = parse_url($_SERVER['REQUEST_URI']);//Parse Uri
if(isset($parsed_url['path'])){ if(isset($parsed_url['path'])){
self::$path = trim($parsed_url['path'],'/'); self::$path = $parsed_url['path'];
}else{ }else{
self::$path = ''; self::$path = '/';
} }
} }

View File

@ -3,63 +3,63 @@
//include //include
include('Config.php'); include('Config.php');
include('Route.php'); include('Route.php');
//config //config
Config::set('basepath',''); Config::set('basepath','');
//init routing //init routing
Route::init(); Route::init();
//base route (startpage) //base route (startpage)
Route::add('',function(){ Route::add('/',function(){
//Do something //Do something
echo 'Welcome :-)'; echo 'Welcome :-)';
}); });
//base route //base route
Route::add('index.php',function(){ Route::add('/index.php',function(){
//Do something //Do something
echo 'You are not realy on index.php ;-)'; echo 'You are not realy on index.php ;-)';
}); });
//simple route //simple route
Route::add('test.html',function(){ Route::add('/test.html',function(){
//Do something //Do something
echo 'Hello from test.html'; echo 'Hello from test.html';
}); });
//complex route with parameter //complex route with parameter
Route::add('user/(.*)/edit',function($id){ Route::add('/user/(.*)/edit',function($id){
//Do something //Do something
echo 'Edit user with id '.$id.'<br/>'; echo 'Edit user with id '.$id.'<br/>';
}); });
//accept only numbers as the second parameter. Other chars will result in a 404 //accept only numbers as the second parameter. Other chars will result in a 404
Route::add('foo/([0-9]*)/bar',function($var1){ Route::add('/foo/([0-9]*)/bar',function($var1){
//Do something //Do something
echo $var1.' is a great number!'; echo $var1.' is a great number!';
}); });
//long route //long route
Route::add('foo/bar/foo/bar',function(){ Route::add('/foo/bar/foo/bar',function(){
//Do something //Do something
echo 'hehe :-)<br/>'; echo 'hehe :-)<br/>';
}); });
//crazy route with parameters (Will be triggered on the route pattern above too because it matches too) //crazy route with parameters (Will be triggered on the route pattern above too because it matches too)
Route::add('(.*)/(.*)/(.*)/(.*)',function($var1,$var2,$var3,$var4){ Route::add('/(.*)/(.*)/(.*)/(.*)',function($var1,$var2,$var3,$var4){
//Do something //Do something
echo 'You have entered: '.$var1.' / '.$var2.' / '.$var3.' / '.$var4.'<br/>'; echo 'You have entered: '.$var1.' / '.$var2.' / '.$var3.' / '.$var4.'<br/>';
}); });
//Add a 404 Not found Route //Add a 404 Not found Route
Route::add404(function($url){ Route::add404(function($url){
//Send 404 Header //Send 404 Header
header("HTTP/1.0 404 Not Found"); header("HTTP/1.0 404 Not Found");
echo '404 :-(<br/>'; echo '404 :-(<br/>';
echo $url.' not found!'; echo $url.' not found!';
}); });
Route::run(); Route::run();