Ok, so I have an index.php file which has to process many different file types. how do I guess the filetype based on the
If I request
http://site/image.jpg, and all requests redirect through index.php, which looks like this
<?php include('/www/site'.$_SERVER['REQUEST_URI']); ?>
How would I make that work correctly?
Should I test based on the extension of the file requested, or is there a way to get the filetype?
If you don't mind external dependencies, you can also check out the excellent getID3 library which can determine the mime-type of many different file types.
mime_content_type() is deprecated, so you won't be able to count on it working in the future. There is a "fileinfo" PECL extension, but I haven't heard good things about it.
If you are running on a *nix server, you can do the following, which has worked fine for me:
$file = escapeshellarg( $filename ); $mime = shell_exec("file -bi " . $file); $filename should probably include the absolute path.