[BUGFIX] Optimisations + bugfixes.

This commit is contained in:
Simon Sessingø
2015-12-10 04:12:44 +01:00
parent 3ba2cec8af
commit 59956d5fca
3 changed files with 11 additions and 9 deletions
+3 -1
View File
@@ -80,11 +80,13 @@ class RouterBase {
}
$this->currentRoute = $route;
if($route instanceof RouterGroup && is_callable($route->getCallback())) {
$route->renderRoute($this->request);
$activeGroup = $route;
$mergedSettings = array_merge($settings, $route->getMergeableSettings());
$mergedSettings = array_merge($route->getMergeableSettings(), $settings);
}
$this->currentRoute = null;
if(count($this->backstack)) {
+3 -2
View File
@@ -136,7 +136,7 @@ abstract class RouterEntry {
* @return mixed
*/
public function getParameters(){
return $this->parameters;
return ($this->parameters === null) ? array() : $this->parameters;
}
/**
@@ -254,7 +254,8 @@ abstract class RouterEntry {
$parameterRegex = $this->parametersRegex[$parameter];
}
for($i = 0; $i < strlen($route); $i++) {
$routeLength = strlen($route);
for($i = 0; $i < $routeLength; $i++) {
$character = $route[$i];
+5 -6
View File
@@ -64,7 +64,6 @@ class RouterRoute extends RouterEntry {
* @return self
*/
public function setUrl($url) {
$parameters = array();
$matches = array();
@@ -72,12 +71,12 @@ class RouterRoute extends RouterEntry {
$parameters = $matches[1];
}
$max = count($parameters);
if($max) {
for($i = 0; $i < $max; $i++) {
$param = $parameters[$i];
$this->parameters[$param] = '';
if(count($parameters)) {
$tmp = array();
foreach($parameters as $param) {
$tmp[$param] = '';
}
$this->parameters = $tmp;
}
$this->url = $url;