api de gestion de ticket, basé sur php-crud-api. Le but est de décorrélé les outils de gestion des données, afin
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Middleware.php 872B

12345678910111213141516171819202122232425262728293031
  1. <?php
  2. namespace Tqdev\PhpCrudApi\Middleware\Base;
  3. use Psr\Http\Server\MiddlewareInterface;
  4. use Tqdev\PhpCrudApi\Controller\Responder;
  5. use Tqdev\PhpCrudApi\Middleware\Router\Router;
  6. abstract class Middleware implements MiddlewareInterface
  7. {
  8. protected $next;
  9. protected $responder;
  10. private $properties;
  11. public function __construct(Router $router, Responder $responder, array $properties)
  12. {
  13. $router->load($this);
  14. $this->responder = $responder;
  15. $this->properties = $properties;
  16. }
  17. protected function getArrayProperty(string $key, string $default): array
  18. {
  19. return array_filter(array_map('trim', explode(',', $this->getProperty($key, $default))));
  20. }
  21. protected function getProperty(string $key, $default)
  22. {
  23. return isset($this->properties[$key]) ? $this->properties[$key] : $default;
  24. }
  25. }