veka-server/rooter

基于Xesau/Router的一个最小化路由器

0.2 2023-03-24 13:22 UTC

This package is auto-updated.

Last update: 2024-09-24 16:19:50 UTC


README

基于Xesau/Router的一个最小化路由器

安装

通过composer

composer require veka-server/rooter

使用方法

初始化

// Creation de l'objet
$router = new \VekaServer\Rooter\Rooter();

// Définir une page 404
$router->set404(function(){
    echo 'ma page 404';
});

示例 1

$router->get(
    '/connexion/magasin/([a-zA-Z0-9_\-+ ]+)/'
    , function($magasin) {
        $obj = new connexion_controller(true);
        $obj->connexion($magasin);
    }
);

示例 2

$router->get(
    '/home'
    , ['maClasse', 'maMethode']
);

可用的路由

$router->get('/home', ['maClasse', 'maMethode']);
$router->post('/home', ['maClasse', 'maMethode']);
$router->getAndPost('/home', ['maClasse', 'maMethode']);
$router->put('/home', ['maClasse', 'maMethode']);
$router->delete('/home', ['maClasse', 'maMethode']);
$router->head('/home', ['maClasse', 'maMethode']);
$router->option('/home', ['maClasse', 'maMethode']);
$router->trace('/home', ['maClasse', 'maMethode']);
$router->connect('/home', ['maClasse', 'maMethode']);

手动执行路由器

$router->dispatchGlobal();

将路由器作为PSR-15中间件使用

// creation du dispatcher
$Dispatcher = new VekaServer\Dispatcher\Dispatcher();

// creer le router
$router = new VekaServer\Rooter\Rooter();

// Définir une page 404
$router->set404(function(){
    echo 'ma page 404';
});

// ajouter les route ici, par exemple
$router->get('/home', ['maClasse', 'maMethode']);

// ajout le middlewares
$Dispatcher->pipe($router);