diff --git a/.htaccess b/.htaccess
index 9681cf0..b3df3bb 100644
--- a/.htaccess
+++ b/.htaccess
@@ -1,10 +1,14 @@
DirectoryIndex index.php
-
+
+#enable apache rewrite engine
RewriteEngine on
-
+
+#set your rewrite base
RewriteBase /
-
+
+#Deliver the folder or file if it exists on the server directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
+#Push every request to index.php
RewriteRule ^(.*)$ index.php [QSA]
\ No newline at end of file
diff --git a/Route.php b/Route.php
index 09255b0..584697e 100644
--- a/Route.php
+++ b/Route.php
@@ -8,7 +8,7 @@ class Route{
public static function init(){
- $parsed_url = parse_url($_SERVER['REQUEST_URI']);//URI zerlegen
+ $parsed_url = parse_url($_SERVER['REQUEST_URI']);//Parse Uri
if(isset($parsed_url['path'])){
self::$path = trim($parsed_url['path'],'/');
diff --git a/index.php b/index.php
index a05a55e..af52936 100644
--- a/index.php
+++ b/index.php
@@ -10,12 +10,18 @@ Config::set('basepath','');
//init routing
Route::init();
-//base route
+//base route (startpage)
Route::add('',function(){
//Do something
echo 'Welcome :-)';
});
+//base route
+Route::add('index.php',function(){
+ //Do something
+ echo 'You are not realy on index.php ;-)';
+});
+
//simple route
Route::add('test.html',function(){
//Do something
@@ -25,14 +31,34 @@ Route::add('test.html',function(){
//complex route with parameter
Route::add('user/(.*)/edit',function($id){
//Do something
- echo 'Edit user with id '.$id;
+ echo 'Edit user with id '.$id.'
';
});
-
+
+//accept only numbers as the second parameter. Other chars will result in a 404
+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(){
+ //Do something
+ echo 'hehe :-)
';
+});
+
+//crazy route with parameters (Will be triggered on the route pattern above too because it matches too)
+Route::add('(.*)/(.*)/(.*)/(.*)',function($var1,$var2,$var3,$var4){
+ //Do something
+ echo 'You have entered: '.$var1.' / '.$var2.' / '.$var3.' / '.$var4.'
';
+});
+
+//Add a 404 Not found Route
Route::add404(function($url){
//Send 404 Header
header("HTTP/1.0 404 Not Found");
- echo '404 :-(';
+ echo '404 :-(
';
+ echo $url.' not found!';
});