summaryrefslogtreecommitdiffstats
path: root/system
diff options
context:
space:
mode:
authorDerek Jones <derek.jones@ellislab.com>2009-02-10 21:03:29 +0100
committerDerek Jones <derek.jones@ellislab.com>2009-02-10 21:03:29 +0100
commit08cae63859339faaac8809c6a1d1fceed5f2909f (patch)
tree6c0356b2e726c987f10c17bcafccdcbbbd4d8f2b /system
parent63eeae3357b94edfdd5b652fd97fe878403be9f8 (diff)
"optimized" explode_name()
Diffstat (limited to 'system')
-rw-r--r--system/libraries/Image_lib.php24
1 files changed, 4 insertions, 20 deletions
diff --git a/system/libraries/Image_lib.php b/system/libraries/Image_lib.php
index 0e7f21435..2896c9e07 100644
--- a/system/libraries/Image_lib.php
+++ b/system/libraries/Image_lib.php
@@ -1437,26 +1437,10 @@ class CI_Image_lib {
*/
function explode_name($source_image)
{
- $x = explode('.', $source_image);
- $ret['ext'] = '.'.end($x);
-
- $name = '';
-
- $ct = count($x)-1;
-
- for ($i = 0; $i < $ct; $i++)
- {
- $name .= $x[$i];
-
- if ($i < ($ct - 1))
- {
- $name .= '.';
- }
- }
-
- $ret['name'] = $name;
-
- return $ret;
+ $ext = strrchr($source_image, '.');
+ $name = ($ext === FALSE) ? $source_image : substr($source_image, 0, -strlen($ext));
+
+ return array('ext' => $ext, 'name' => $name);
}
// --------------------------------------------------------------------