This extension is deprecated, please use the fileinfo extension from PECL instead. Back when i implemented mime_magic there was no library interface to the file utilities functionality. The only way to get the functionality in place was to get the file sources and replace the input and output routines within with code interfacing to your own stuff. This work was originally done by the developers of apache mod_magic, the mime_magic extension just replaced the apache specific parts with their PHP counterparts. Now that the codebase of the file utilities is cleanly devided into the libmagic library and the file utility built upon it the original hack is no longer needed. Using libmagic and the fileinfo extension does not only provide a cleaner interface to files functionality but also additional functionality so that theres no reason to keep around mime_magic anymore. To keep existing code originaly coded for mime_magic without changes you may add the following compatibility wrapper function to your codebase: function mime_content_type($file) { static $finfo = false; if ($finfo === false) { $finfo = finfo_open(MAGIC_MIME); } if (is_resource($file)) { $buf = fread($fp, 65536); return finfo_buffer($buf); } else { return finfo_file($file); } }