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.
david wrote:
hello
the correct is: php-pear, instead pear-php
regards
david E-commerce CRM Solutions
Posted on 08-Ago-08 at 12:50 am | Permalink
Francisco wrote:
@david Thanks for your correction
Posted on 09-Ago-08 at 11:35 am | Permalink
Leonardo Tadei wrote:
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!
Posted on 21-Sep-08 at 11:14 pm | Permalink
Francisco wrote:
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.
Posted on 22-Sep-08 at 2:37 pm | Permalink