diff options
author | vlakoff <vlakoff@gmail.com> | 2012-12-03 10:43:44 +0100 |
---|---|---|
committer | vlakoff <vlakoff@gmail.com> | 2012-12-03 10:43:44 +0100 |
commit | 66cb413bc614bfe50d02059347a0ad0351a014c2 (patch) | |
tree | 564b96816bfbc439691478734cee687e83a78dbc /system/core | |
parent | e1d6c46b7d5e3d82dc6953af29f0b02ccb03e2dc (diff) |
config->site_url() optimizations
- direct access to config array, instead of item() calls
- the string cast is just in case 'url_suffix' would be set to false or null; the function produces the same results without this cast, but it leads to a robuster code, as false and null are sanitized and skip the suffix insertion code
- altered conditional structure: if no suffix, skip the appending of an empty string to $uri
Diffstat (limited to 'system/core')
-rw-r--r-- | system/core/Config.php | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/system/core/Config.php b/system/core/Config.php index 8250b5b1a..9e6d2cbf2 100644 --- a/system/core/Config.php +++ b/system/core/Config.php @@ -245,15 +245,18 @@ class CI_Config { if ($this->item('enable_query_strings') === FALSE) { - $suffix = ($this->item('url_suffix') === FALSE) ? '' : $this->item('url_suffix'); + $suffix = isset($this->config['url_suffix']) ? (string) $this->config['url_suffix'] : ''; - if ($suffix !== '' && ($offset = strpos($uri, '?')) !== FALSE) + if ($suffix !== '') { - $uri = substr($uri, 0, $offset).$suffix.substr($uri, $offset); - } - else - { - $uri .= $suffix; + if (($offset = strpos($uri, '?')) !== FALSE) + { + $uri = substr($uri, 0, $offset).$suffix.substr($uri, $offset); + } + else + { + $uri .= $suffix; + } } return $this->slash_item('base_url').$this->slash_item('index_page').$uri; |