(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.
flagsmagic_databaseMAGIC est utilisée.
Si la variable d'environnement n'est pas définie, la base de données
magique embarquée dans 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 resource était attendue. |
| 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_databaseetMAGICnon définies) est la meilleure des solutions à moins d'avoir besoin d'une base de données magique spécifique.