finfo_open

finfo::__construct

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

finfo_open -- finfo::__constructCrée une nouvelle ressource fileinfo

Description

Style procédural

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

Style orienté objet (constructor):

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

Cette fonction ouvre une base de données magique et retourne sa ressource.

Liste de paramètres

options

Une ou une union de plusieurs constantes Fileinfo.

magic_file

Nom de fichier d'une base de données magique, normalement quelque chose comme /path/to/magic.mime. Si non spécifié, la variable d'environnement MAGIC est utilisée. Si la variable d'environnement n'est pas définie, la base de données magique embarquée à PHP sera utilisée.

Le fait de passer NULL ou une chaîne de caractères vide équivaut à utiliser la valeur par défaut.

Valeurs de retour

(Uniquement en mode procédural) Retourne une ressource de base de données magique en cas de succès ou FALSE si une erreur survient.

Notes

Avertissement

Le format de la base de données magique a changé en PHP 5.3.11 et 5.4.1. De ce fait, la base de données magique interne a été mise à jour. L'un des plus gros effets de cette mise à jour est que, lors d'une lecture d'un fichier magique ancien, elle échoue. De plus, quelques représentations textuelles de type mimes ont changé, par exemple, pour le monde de PHP "PHP script, ASCII text" est retourné au lieu de "PHP script text".

Note:

Généralement, l'utilisation de la base de données magique embarquée (en laissant les variables d'environnement magic_file et MAGIC non définies) est la meilleure des solutions à moins que vous n'ayez besoin d'une base de données magique spécifique.

Exemples

Exemple #1 Style orienté objet

<?php
$finfo 
= new finfo(FILEINFO_MIME"/usr/share/misc/magic"); // Retourne le type mime

/* Récupère le mime-type d'un fichier spécifique */
$filename "/usr/local/something.txt";
echo 
$finfo->file($filename);

?>

Exemple #2 Style procédural

<?php
$finfo 
finfo_open(FILEINFO_MIME"/usr/share/misc/magic"); // Retourne le type mime

if (!$finfo) {
    echo 
"Échec de l'ouverture de la base de données fileinfo";
    exit();
}

/* Récupère le mime-type d'un fichier spécifique */
$filename "/usr/local/something.txt";
echo 
finfo_file($finfo$filename);

/* Fermeture de la connexion */
finfo_close($finfo);
?>

L'exemple ci-dessus va afficher :

text/plain; charset=us-ascii

Voir aussi