(PHP >= 5.3.0, PHP 7, PHP 8, PECL fileinfo >= 0.1.0)
finfo_open -- finfo::__construct — Crée une nouvelle instance finfo
Style procédural
Style orienté objet (constructor):
Cette fonction ouvre une base de données magique et retourne son instance.
flags
Une ou une union de plusieurs constantes Fileinfo.
magic_database
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.
(Uniquement en mode procédural)
Retourne une instance de finfo en cas de succès, ou false
si une erreur survient.
Version | Description |
---|---|
8.1.0 | Retourne désormais une instance de finfo ; auparavant, une ressource était attendu. |
8.0.3 |
magic_database est désormais nullable.
|
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
Note:
Généralement, l'utilisation de la base de données magique embarquée (en laissant les variables d'environnement
magic_database
etMAGIC
non définies) est la meilleure des solutions à moins que vous n'ayez besoin d'une base de données magique spécifique.