0) { unset($pathArray[$i]); unset($pathArray[$i - 1]); break; } } } $returnValue = implode('/', $pathArray); } return $returnValue; } /** * PHP Words version of exif_imagetype to return the Image Type from a file * * @param string $filename * @return int|bool */ private static function fallbackImagetype($filename) { if ((list($width, $height, $type, $attr) = getimagesize($filename)) !== false) { if ($type === 2) { return self::IMAGETYPE_JPEG; } elseif ($type === 1) { return self::IMAGETYPE_GIF; } elseif ($type === 3) { return self::IMAGETYPE_PNG; } elseif ($type === 6) { return self::IMAGETYPE_BMP; } elseif ($type === 7 || $type === 8) { return self::IMAGETYPE_TIFF; } } return false; } /** * Return the Image Type from a file * * @param string $filename * @param bool $userFallbackFunction * @return int|bool */ public static function imagetype($filename, $userFallbackFunction = false) { if ($userFallbackFunction || !function_exists('exif_imagetype')) { return self::fallbackImagetype($filename); } $imagetype = exif_imagetype($filename); if ($imagetype === IMAGETYPE_JPEG) { return self::IMAGETYPE_JPEG; } elseif ($imagetype === IMAGETYPE_GIF) { return self::IMAGETYPE_GIF; } elseif ($imagetype === IMAGETYPE_PNG) { return self::IMAGETYPE_PNG; } elseif ($imagetype === IMAGETYPE_BMP) { return self::IMAGETYPE_BMP; } elseif ($imagetype === IMAGETYPE_TIFF_II || $imagetype === IMAGETYPE_TIFF_MM) { return self::IMAGETYPE_TIFF; } return false; } }