loomlabs/router-component

A PHP routing component.

1.1.0 2025-05-20 18:54 UTC

This package is auto-updated.

Last update: 2025-05-20 18:55:25 UTC


README

Version 1.1.0 Coverage 100.00% License GPL-3.0-or-later

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