Еще баг в роутах с PCRE

Просто демонстрация факта. Есть роут: ```php $router->add('/info(/{id:[0-9]+})?', [ 'module' => 'frontend', 'controller' => 'index', 'action' => 'index', 'id' => 1, ]); ```

Если сделать запрос на /info, в $this->dispatcher->getParam('id') вернет "1", т.е. индекс параметра, а не его значение. Баг явный, кто-нибудь оформите ошибку в багтрекер, plz.

Если у тебя в url уже прописан {id:[0-9]+}, то зачем его еще раз обозначать в 'id' => 1. Еще и правило в ( )? собрал, роутер выдаёт, скорее всего, значение по умолчанию ( 'id' => 1 ).



6.3k

Проверю завтра, но думаю проблема в чем-то другом.



6.3k

Блин, нельзя на пьяную голову программить. Явно же мой глюк, параметр отсутствует - выдаем дефолтное значение, которое сам и указал ((((. Вот я... @boston, спс.