This is a simple PHP MVC framework demonstration.
How Routing Works
When you visit /about, here's what happens:
1. Browser requests: GET /about
2. Apache receives request
- Checks: Does /about exist as a file? No
- Checks: Does /about exist as a directory? No
- Applies .htaccess rule: Rewrite to index.php
3. index.php runs:
$uri = '/about'
$method = 'GET'
$router->dispatch('GET', '/about')
4. Router searches routes:
'/about' matches pattern '/about'
Handler: ['HomeController', 'about']
5. Router creates controller:
$controller = new HomeController()
$controller->about()
6. Controller renders view:
$this->view('home/about', ['title' => 'About Us'])
Try These URLs
- /users/1 - Shows user with ID 1
- /users/42 - Shows user with ID 42
- /users/999 - User doesn't exist
- /users/abc - Won't match (pattern requires digits)
- /nonexistent - No route matches, shows 404