borbyu/wrr

Wrr 是一个请求路由器

v0.3.1 2019-02-23 05:10 UTC

This package is auto-updated.

Last update: 2024-09-23 17:17:06 UTC


README

这是一个轻量级且快速的 PHP 7 请求路由库,没有其他功能

用法

    <?php
    use Wrr\Router;
    use Wrr\Route\HttpRoute;
    use Wrr\Response\HttpResponse;

    require_once __DIR__ . '/../../vendor/autoload.php';

    /*
     * make a wildcard route that covers everything and will result in a sane default
     */
    $router = new Router();
    $router->registerRoute(
        new HttpRoute(
            '^/',
            function () {
                return "Wrr!... You've been served! ";
            }
        )
    ); // catch all

    $defaultResponse = new HttpResponse();
    $router->registerHttpRoute(
        'wrr',
        'GET',
        function () {
            return ["Wrr status", "Wrr is Cool!"];
        }
    );

    try {
        $headers = ['X-Meta: Response Built by Wrr!'];
        $response = $router
            ->respond(200, $headers);
    } catch (Exception $e) {
        $response = new \Wrr\Response\HttpResponse();
        $response
            ->setPayload($e->getMessage())
            ->setResponseCode($e->getCode() ?: 500)
            ->deliverPayload();
    }

要求

  • PHP 7+
  • PHPUnit 8+ 以执行测试套件(phpunit --version)

作者

borbyu jason@woys.org

版权所有 2019 Jason Woys(版权所有)