PHP: Маска элементов в массиве

изучаю то как работают фраймворки И решил сделать свою систему роутов Сейчас у меня работает так

$route->addRoute({method}, "{route}", {controller function or object})

Пример

$route->addRoute(POST, "/blog", [\Controllers\BlogController::class, "showPage"])

В классе route я просто записываю обработчик и роут в массив А потом при обращении смотрю в массиве какой обработчик под этим роутом
addRoute
И при подключении ищу роут:

Как сделать передачу параметров? Например вот так

$route->addRoute(POST, "/hello/{id}", function($response, $request, ...$params){
    return $response->setBody("Id: " . $params['id']);
});

Переменная $response хранит объект для формирования ответа, $request не важно Как можно сделать $params? Пробовал формировать регулярные выражения при добавлении роута в массив, а потом через foreach сравнивать, но это не поддерживает большое количество параметров


Ответы (0 шт):