HOWTO: Obtener el tipo MIME de un archivo mediante PHP
Edito sábado, 09 de agosto de 2008: Corregido un error en el nombre del paquete de PEAR en Ubuntu. Gracias david.
Sigo peleándome con mi proyecto fin de carrera, y mi última batalla ha consistido en obtener el tipo MIME de un archivo mediante PHP. Tras un vistazo al manual de PHP me encontré con esta extensión de PHP que hace lo que necesito y mucho más.
Se puede instalar mediante PEAR, para ello seguimos el siguiente procedimiento.
- Instalamos PEAR, las librerías para desarrollo de PHP y de libmagic.
-
-
sudo aptitude install php-pear php5-dev libmagic-dev
-
-
- Usamos el comando pecl para instalar la extensión
-
-
sudo pecl install fileinfo
-
-
-
Añadimos la extensión a nuestro php.ini, para ello accedemos creamos un nuevo archivo llamado
extensiones.inien la carpeta/etc/php5/conf.dy añadimos dentro la linea:extension=fileinfo.so
- Por último reiniciamos apache
-
-
sudo /etc/init.d/apache2 restart
-
-
Ya tenemos la extensión instalada, ahora para obtener el tipo mime podemos usar un código parecido a este.
-
-
$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic");
-
$filename = ‘/ruta/al/archivo.jpg’;
-
$mime_type = $finfo->file($filename);
-
Tras esto tendremos el tipo MIME almacenado en la variable mime_type. Para más ejemplos de uso de la extensión se puede acudir a la página del manual de PHP.
Relacionados:


Agosto 8th, 2008 at 0:50
hello
the correct is: php-pear, instead pear-php
regards
david E-commerce CRM Solutions
Agosto 9th, 2008 at 11:35
@david Thanks for your correction
Septiembre 21st, 2008 at 23:14
La función mime_content_type hace esto de forma nativa:
string mime_content_type ( string filename )
Salvo que no necesites solo el tipo MIME, hacerlo vía una extensión te impide este cambio si el servidor entero no es tuyo.
Saludos!
Septiembre 22nd, 2008 at 14:37
Gracias por tu respuesta Leonardo. El problema es que esa función está marcada como deprecated y por lo tanto su uso está desaconsejado.
Es más, en el mismo manual de PHP aconsejan usar la función del post para obtener el tipo MIME de un archivo.
Por otro lado PEAR es una extensión que suele estar instalada en casi cualquier hosting con PHP.