filetypes[$this->getFileExtension($filename)]['type']) { return $filetype; } else { return false; } } /** * Return file's mime type if known and false if unknown (based on file's extension) * @param: string $filename */ function getFileMimeType($filename) { if ($filetype = $this->filetypes[$this->getFileExtension($filename)]['mime']) { return $filetype; } else { return false; } } /** * Return file's information as an hashed array, false if unknown (based on file's extension) * @param: string $filename */ function getFileInfo($filename) { if ($filetype = $this->filetypes[$this->getFileExtension($filename)]) { return $filetype; } else { return false; } } /** * Return true if $filename is handled (known in our database) * @param: string $filename */ function isHandled($filename) { if (isset($this->filetypes[$this->getFileExtension($filename)])) { return true; } else { return false; } } /** * Return true if $filename is an image (based on file's extension) * @param: string $filename */ function isImage($filename) { if ($this->filetypes[$this->getFileExtension($filename)]['type'] == 'image') { return true; } else { return false; } } /** * Return true if $filename is a video (based on file's extension) * @param: string $filename */ function isVideo($filename) { if ($this->filetypes[$this->getFileExtension($filename)]['type'] == 'video') { return true; } else { return false; } } /** * Return a filename's extension in lowercase * Only using the filename given as argument to guess (not dealing with the file header) * @param: string $filename */ function getFileExtension($filename) { if (preg_match('/\.(\w{3,4})$/i', $filename, $match)) { return strtolower($match[1]); } else { //trigger_error("Failed to retrieve extension of file '$filename'", E_USER_WARNING); return false; } } } ?>