-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.php
More file actions
38 lines (31 loc) · 942 Bytes
/
index.php
File metadata and controls
38 lines (31 loc) · 942 Bytes
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
32
33
34
35
36
37
38
<?php
require __DIR__ . '/vendor/autoload.php';
use \Morphable\SimpleRouting;
use \Morphable\SimpleRouting\Route;
/*
$req = \Morphable\SimpleRouting\Request
$res = \Morphable\SimpleRouting\Response
*/
// A simple route with response
$route = new Route('GET', '/user/:user_id/', function ($req, $res) {
return $res->sendResponse('UserId = ' . $req->getParam('user_id'), 200);
});
// A route with middleware
$route2 = new Route('POST', '/user/:user_id/update', function ($req, $res) {
return $res->sendResponse('Welcome user 2!');
}, [
// middlewares
function ($req, $res) {
if ($req->getParam('user_id') != 2) {
return $res->sendResponse('Forbidden', 403);
}
}
]);
SimpleRouting::add('user_detail', $route);
SimpleRouting::add('user_update', $route2);
try {
SimpleRouting::execute();
} catch (\Morphable\SimpleRouting\Exception\RouteNotFound $e) {
// catch 404
die('404');
}