diff options
author | Andrey Andreev <narf@bofh.bg> | 2012-10-24 22:52:05 +0200 |
---|---|---|
committer | Andrey Andreev <narf@bofh.bg> | 2012-10-24 22:52:05 +0200 |
commit | 4a7cc768a836a12c4839e482715b3859e0c16d7d (patch) | |
tree | 9b0cf091fc44b604a412bea64eec0d960ec724e4 /system/core/URI.php | |
parent | 04c50f50ad1f522f9521197f9ee7059da52168e0 (diff) |
Fix #1811
Diffstat (limited to 'system/core/URI.php')
-rw-r--r-- | system/core/URI.php | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/system/core/URI.php b/system/core/URI.php index 15e6a5599..40eaaeb6b 100644 --- a/system/core/URI.php +++ b/system/core/URI.php @@ -433,9 +433,9 @@ class CI_URI { /** * Generate a key value pair from the URI string or Re-routed URI string * - * @param int the starting segment number - * @param array an array of default values - * @param string which array we should use + * @param int $n = 3 the starting segment number + * @param array $default = array() an array of default values + * @param string $which = 'segment' which array we should use * @return array */ protected function _uri_to_assoc($n = 3, $default = array(), $which = 'segment') @@ -445,9 +445,11 @@ class CI_URI { return $default; } - if (isset($this->keyval[$n])) + in_array($which, array('segment', 'rsegment'), TRUE) OR $which = 'segment'; + + if (isset($this->keyval[$which], $this->keyval[$which][$n])) { - return $this->keyval[$n]; + return $this->keyval[$which][$n]; } if ($which === 'segment') @@ -499,7 +501,7 @@ class CI_URI { } // Cache the array for reuse - $this->keyval[$n] = $retval; + $this->keyval[$which][$n] = $retval; return $retval; } |