Extend domain filter to support fixed subdomain and domain parameter

This commit is contained in:
Stefan Warnat
2021-10-04 01:49:42 +02:00
parent 9fa7ad3e91
commit 5268a998ff
2 changed files with 68 additions and 3 deletions
+4 -3
View File
@@ -123,7 +123,8 @@ abstract class Route implements IRoute
);
// Ensures that host names/domains will work with parameters
$url = '/' . ltrim($url, '/');
if($route[0] == '{') $url = '/' . ltrim($url, '/');
$urlRegex = '';
$parameters = [];
@@ -131,7 +132,7 @@ abstract class Route implements IRoute
$urlRegex = preg_quote($route, '/');
} else {
foreach (preg_split('/((-?\/?){[^}]+})/', $route) as $key => $t) {
foreach (preg_split('/((\.?-?\/?){[^}]+})/', $route) as $key => $t) {
$regex = '';
@@ -146,7 +147,7 @@ abstract class Route implements IRoute
$regex = $parameterRegex ?? $this->defaultParameterRegex ?? static::PARAMETERS_DEFAULT_REGEX;
}
$regex = sprintf('((\/|-)(?P<%2$s>%3$s))%1$s', $parameters[2][$key], $name, $regex);
$regex = sprintf('((\/|-|\.)(?P<%2$s>%3$s))%1$s', $parameters[2][$key], $name, $regex);
}
$urlRegex .= preg_quote($t, '/') . $regex;