$route = "#^cabinet/yes/{id_course:[\w\d\-]+}/{id_member:[\w\d\-]+}$#"
$route = preg_replace('/{([a-z\-]+):([^\}]+)}/', '(?P<\1>\2)', $route);
Хочу получить строку:
#^cabinet/yes/(?P[\w\d\-]+)/(?P[\w\d\-]+)$#
А получаю то же самое что и в начале:
#^cabinet/yes/{id_course:[\w\d\-]+}/{id_member:[\w\d\-]+}$#
Что я делаю потом?
$route = "#^cabinet/yes/{id_course:[\w\d\-]+}/{id_member:[\w\d\-]+}$#"
$route = preg_replace('/{([a-z\-]+):([^\}]+)}/', '(?P<\1>\2)', $route);
$url = trim($_SERVER["REQUEST_URI"], '/');
preg_match($route, $url, $matches);
$mathces['id_course'] и $matches['id_member'] я закину в параметры к роуту.