mirror of
https://github.com/skipperbent/simple-php-router.git
synced 2026-06-17 00:37:52 +00:00
[BUGFIX] Minor bugfixes and optimisations
- Fixed getRoute sometimes not passing current loaded route. - Fixed optional parameters in some occasions not working properly.
This commit is contained in:
@@ -278,7 +278,7 @@ abstract class RouterEntry {
|
||||
|
||||
if($lastCharacter === '?') {
|
||||
$parameter = substr($parameter, 0, strlen($parameter)-1);
|
||||
$regex .= '\\/?(?P<'.$parameter.'>[^\/]*)\\/?';
|
||||
$regex .= '\\/(?:(?P<'.$parameter.'>[^\/]*)\\/?)';
|
||||
$required = false;
|
||||
} else {
|
||||
$regex .= '\\/(?P<' . $parameter . '>'. $parameterRegex .')\\/';
|
||||
@@ -314,6 +314,10 @@ abstract class RouterEntry {
|
||||
throw new RouterException('Missing required parameter ' . $name['name'], 404);
|
||||
}
|
||||
|
||||
if(!$name['required'] && $parameterValue === null) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$parameters[$name['name']] = $parameterValue;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user