diff options
Diffstat (limited to 'system/codeigniter/CodeIgniter.php')
-rw-r--r-- | system/codeigniter/CodeIgniter.php | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/system/codeigniter/CodeIgniter.php b/system/codeigniter/CodeIgniter.php index e169be0b1..b055d3b1e 100644 --- a/system/codeigniter/CodeIgniter.php +++ b/system/codeigniter/CodeIgniter.php @@ -198,8 +198,16 @@ else } // Call the requested method. Any URI segments present (besides the class/function) - // will be passed to the method for convenience - call_user_func_array(array(&$CI, $method), array_slice($RTR->rsegments, 2)); + // will be passed to the method for convenience, either as an array or discreet params + + if (isset($CI->_uri_as_array) AND $CI->_uri_as_array === TRUE) + { + $CI->$method(array_slice($RTR->rsegments, 2)); + } + else + { + call_user_func_array(array(&$CI, $method), array_slice($RTR->rsegments, 2)); + } } } |