finfo_open
finfo::__construct
(PHP >= 5.3.0, PHP 7, PHP 8, PECL fileinfo >= 0.1.0)
finfo_open -- finfo::__construct — Crea una nueva instancia finfo
Descripción
Estilo procedimental
Estilo orientado a objetos (constructor):
Esta función abre una base de datos mágica y devuelve su instancia.
Parámetros
flags
-
Una o una unión de varias constantes Fileinfo.
magic_database
-
Nombre de fichero de una base de datos mágica, normalmente algo
como /path/to/magic.mime. Si no se especifica, se utiliza
la variable de entorno
MAGIC.
Si la variable de entorno no está definida, se utilizará la base de datos mágica
integrada en PHP.
Pasar null o un string vacío equivale a
utilizar el valor por omisión.
Valores devueltos
(Únicamente en modo procedimental)
Devuelve una instancia de finfo en caso de éxito, o false si ocurre un error.
Ejemplos
Ejemplo #1 Estilo orientado a objetos
<?php
$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic"); // Devuelve el tipo mime
/* Obtiene el mime-type de un fichero específico */
$filename = "/usr/local/something.txt";
echo $finfo->file($filename);
?>
Ejemplo #2 Estilo procedimental
<?php
$finfo = finfo_open(FILEINFO_MIME, "/usr/share/misc/magic"); // Devuelve el tipo mime
if (!$finfo) {
echo "Fallo al abrir la base de datos fileinfo";
exit();
}
/* Obtiene el mime-type de un fichero específico */
$filename = "/usr/local/something.txt";
echo finfo_file($finfo, $filename);
/* Cierre de la conexión */
finfo_close($finfo);
?>
El ejemplo anterior mostrará:
text/plain; charset=us-ascii
Notas
Nota:
Generalmente, el uso de la base de datos mágica integrada (dejando
las variables de entorno magic_database y MAGIC
no definidas) es la mejor solución a menos que se necesite
una base de datos mágica específica.