DLight\Application\Middleware

Mô tả: registry middleware dạng string. Router có thể dùng middleware string và gọi qua Middleware::run().

Public API

  • Middleware::register(?string $name = null, ?callable $callback = null): void
  • Middleware::get(string $name): ?callable
  • Middleware::exists(string $name): bool
  • Middleware::run(string $name, array $context = [])

Demo

use DLight\Application\Middleware;
use DLight\Application\Router;
use DLight\Application\Session;

Middleware::register('auth', function(array $ctx) {
    if (!Session::has('user_id')) {
        http_response_code(401);
        return "Unauthorized";
    }
    return null; // tiếp tục request
});

Router::sign('GET /admin', function() {
    return "Admin";
}, ['auth']);