dkx/slim-injectable-routes

此包已被废弃,不再维护。未建议替代包。

将自定义参数注入路由回调

0.0.1 2019-02-03 13:39 UTC

This package is auto-updated.

Last update: 2024-02-05 01:58:32 UTC


README

将自定义参数注入slim路由回调

仅支持类路由!

安装

$ composer require dkx/slim-injectable-routes

用法

<?php

use DKX\SlimInjectableRoutes\InjectableRoutes;
use DKX\MethodInjector\MethodInjector;
use Slim\Container;

$c = new Container();
$c['foundHandler'] = function() {
    $routes = new InjectableRoutes;
    $routes->provideInjectableSetup(function(MethodInjector $injector) {
        $injector->provideValue(\stdClass::class, new \stdClass);
    });
    
    return $routes;
};

现在您将能够自动将 stdClass 注入您的路由,如下所示

<?php

use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Message\ResponseInterface;

final class MyRoute
{

    public function __invoke(ServerRequestInterface $request, ResponseInterface $response, array $args, \stdClass $std): ResponseInterface
    {
        // ...
        return $response;    
    }

}

有关 MethodInjector 的更多信息,请参阅 dkx/method-injector 的文档。