(PHP >= 5.3.0, PHP 7, PHP 8, PECL fileinfo >= 0.1.0)
finfo_open -- finfo::__construct — Crea una nueva instancia finfo
Estilo por procedimientos
Estilo orientado a objetos (constructor):
Esta función abre una base de datos mágica y devuelve su instancia.
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 chaîne de caractères vacío equivale a
utilizar el valor por omisión.
(Únicamente en modo procedimental)
Devuelve una instancia de finfo en caso de éxito, o false
en caso de error.
Versión | Descripción |
---|---|
8.1.0 | Ahora devuelve una instancia de finfo ; anteriormente, se esperaba una recurso. |
8.0.3 |
magic_database ahora es nullable.
|
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 por procedimientos
<?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 resultado del ejemplo sería:
text/plain; charset=us-ascii
Nota:
Generalmente, el uso de la base de datos mágica integrada (dejando las variables de entorno
magic_database
yMAGIC
no definidas) es la mejor solución a menos que se necesite una base de datos mágica específica.