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(){
$parsed_url = parse_url($_SERVER['REQUEST_URI']);//Parse Uri
if(isset($parsed_url['path'])){
self::$path = trim($parsed_url['path'],'/');
self::$path = $parsed_url['path'];
}else{
self::$path = '';
self::$path = '/';
}
}

View File

@ -3,63 +3,63 @@
//include
include('Config.php');
include('Route.php');
//config
Config::set('basepath','');
//init routing
Route::init();
//base route (startpage)
Route::add('',function(){
Route::add('/',function(){
//Do something
echo 'Welcome :-)';
});
//base route
Route::add('index.php',function(){
Route::add('/index.php',function(){
//Do something
echo 'You are not realy on index.php ;-)';
});
//simple route
Route::add('test.html',function(){
Route::add('/test.html',function(){
//Do something
echo 'Hello from test.html';
});
//complex route with parameter
Route::add('user/(.*)/edit',function($id){
Route::add('/user/(.*)/edit',function($id){
//Do something
echo 'Edit user with id '.$id.'<br/>';
});
//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
echo $var1.' is a great number!';
});
//long route
Route::add('foo/bar/foo/bar',function(){
Route::add('/foo/bar/foo/bar',function(){
//Do something
echo 'hehe :-)<br/>';
});
//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
echo 'You have entered: '.$var1.' / '.$var2.' / '.$var3.' / '.$var4.'<br/>';
});
//Add a 404 Not found Route
Route::add404(function($url){
//Send 404 Header
header("HTTP/1.0 404 Not Found");
echo '404 :-(<br/>';
echo $url.' not found!';
});
Route::run();
Route::run();