花粉解决方案 - 路由组件 - HTTP请求映射和HTTP响应解析。

v1.0.10 2023-01-04 00:00 UTC

This package is auto-updated.

Last update: 2024-09-13 13:12:10 UTC


README

Latest Stable Version MIT Licensed PHP Supported Versions

花粉解决方案 路由 组件提供HTTP请求映射和HTTP响应解析的层。

安装

composer require pollen-solutions/routing

基本用法

<?php declare(strict_types=1);

use Pollen\Http\Request;
use Pollen\Http\Response;
use Pollen\Http\ResponseInterface;
use Pollen\Routing\Router;

// Router instantiation
$router = new Router();

// Map a route
$router->map('GET', '/', static function (): ResponseInterface {
    return new Response('<h1>Hello, World!</h1>');
});

$router->map('GET', '/phpinfo', static function () {
    ob_start();
    phpinfo();
    return new Response(ob_get_clean());
});

// Setting Handle Request (optional)
$psrRequest = Request::createFromGlobals()->psr();

// Map a Fallback Route (optional)
$router->setFallback(function () {
    return new Response('<h1>404 - Page not found !</h1>', 404);
});

// Catch HTTP Response
$response = $router->handle($psrRequest);

// Send the response to the browser
$router->send($response);

// Trigger the terminate event
$router->terminate($psrRequest, $response);