public function getExifInfos()
    {
        if (!$this->exists()) {
            return false;
        }
        $exifdata = array();
        if ($data = exif_read_data($this->getRealPath(), 'EXIF', true)) {
            foreach ($data as $key => $section) {
                foreach ($section as $name => $value) {
                    if (is_string($value)) {
                        if (!isset($exifdata[$name])) {
                            $exifdata[$name] = '';
                        }
                        $exifdata[$name] .= $value;
                    } elseif (is_array($value)) {
                        if (!isset($exifdata[$name])) {
                            $exifdata[$name] = array();
                        }
                        $exifdata[$name][] = $value;
                    }
                }
            }
            if (!empty($exifdata["GPSLongitude"]) && !empty($exifdata['GPSLongitudeRef'])) {
                $exifdata["GPSLongitudeTransformed"] = self::getGps($exifdata["GPSLongitude"][0], $exifdata['GPSLongitudeRef'][0]);
            }
            if (!empty($exifdata["GPSLatitude"]) && !empty($exifdata['GPSLatitudeRef'])) {
                $exifdata["GPSLatitudeTransformed"] = self::getGps($exifdata["GPSLatitude"][0], $exifdata['GPSLatitudeRef'][0]);
            }
            if (!empty($exifdata["DateTime"])) {
                $exifdata["DateTimeTransformed"] = self::getDateFromExif($exifdata["DateTime"]);
            }
            if (!empty($exifdata["DateTimeOriginal"])) {
                $exifdata["DateTimeOriginalTransformed"] = self::getDateFromExif($exifdata["DateTimeOriginal"]);
            }
        }
        return $exifdata;
    }