finfo_open

finfo::__construct

(PHP >= 5.3.0, PECL fileinfo >= 0.1.0)

finfo_open -- finfo::__constructCrea un nuevo recurso fileinfo

Descripción

Estilo por procedimientos

finfo_open ([ int $options = FILEINFO_NONE [, string $magic_file = NULL ]] ) : resource

Estilo orientado a objetos (constructor):

public finfo::__construct ([ int $options = FILEINFO_NONE [, string $magic_file = NULL ]] )

Esta función abre una base de datos mágica y la devuelve a su recurso.

Parámetros

options

Una o más constantes Fileinfo .

magic_file

Nombre del fichero de la base de datos mágica, normalmente es algo como /path/to/magic.mime. Si no se especifica, se utilizará la variable de entorno MAGIC. Si esta variable no está establecida, se usará la base de datos mágica incluida en PHP.

Pasar NULL o un string vacío equivale al valor predeterminado.

Valores devueltos

(Sólo Estilo por procedimientos) Devuelve el recurso de la base de datos mágica si funciona o FALSE en caso de error.

Notas

Advertencia

El formato esperado de la base de datos mágica cambió en PHP 5.3.11 y 5.4.1. Debido a esto, la base de datos mágica interna ha sido actualizada. Esto mayormente efectua código donde se use una base de datos mágica externa: leer un fichero mágico antiguo ahora fallará. Además, algunas representaciones textuales de los tipos mime han cambiado, por ejemplo, para PHP sería devuelto "PHP script, ASCII text" en lugar de "PHP script text".

Nota:

Generalmente, el uso de la base de datos mágica interna (dejando magic_file y las variables de entorno MAGIC sin establecer) es el mejor rumbo de acción a menos que sea necesaria especificamente una base de datos mágica personalizada.

Ejemplos

Ejemplo #1 Estilo orientado a objetos

<?php
$finfo 
= new finfo(FILEINFO_MIME"/usr/share/misc/magic"); // Devuelve el tipo mime del tipo extensión

/* Obtiene el tipo mime para 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 del tipo extensión

if (!$finfo) {
    echo 
"Ocurrió un error al intentar abrir la base de datos de fileinfo";
    exit();
}

/* Obtiene el tipo mime para un fichero específico */
$filename "/usr/local/something.txt";
echo 
finfo_file($finfo$filename);

/* cerrar conexión */
finfo_close($finfo);
?>

El resultado del ejemplo sería:

text/plain; charset=us-ascii

Ver también