loomlabs / router-component
A PHP routing component.
1.1.0
2025-05-20 18:54 UTC
Requires
- loomlabs/http-component: ^1.0
Requires (Dev)
- loomlabs/badger: ^1.0
- loomlabs/dependency-injection-component: ^1.0
- phpunit/phpunit: ^12.1
README
Installation
composer require loomlabs/router-component
Usage
use Loom\DependencyInjectionComponent\DependencyContainer;
use Loom\DependencyInjectionComponent\DependencyManager;
use Loom\HttpComponent\Request;
use Loom\HttpComponent\Uri;
use Loom\RoutingComponent\Router;
$container = new DependencyContainer();
$dependencyManager = new DependencyManager($container);
$dependencyManager->loadDependenciesFromFile(__DIR__ . '/config/services.yaml');
$router = new Router($container);
$router->loadRoutesFromFile(__DIR__ . '/config/routes.yaml');
$request = new Request(
'GET',
new Uri('http', 'localhost', $uri, $query)
);
echo $router->handleRequest()->getBody()->getContents();
routes:
app.index:
path: /
handler: App\Controller\AppController::index
methods: [GET]
page.view:
path: /page/{page}
handler: App\Controller\PageController::view