# finfo_open

# finfo::__construct

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

finfo_open -- finfo::__construct — Erstellt eine neue Fileinfo-Instanz

### Beschreibung

Prozeduraler Stil

finfo_open(int `$flags` = `FILEINFO_NONE`, ?string `$magic_database` = `null`): finfo|false

Objektorientierter Stil (constructor):

public finfo::__construct(int `$flags` = `FILEINFO_NONE`, ?string `$magic_database` = `null`)

Diese Funktion öffnet eine magische Datenbank und gibt ihre Instanz zurück.

### Parameter-Liste

`flags`
  Eine Fileinfo-Konstante oder mehrere, die durch binäres ODER kombiniert werden.
`magic_database`
  Name einer magischen Datenbankdatei, gewöhnlich ungefähr so: /path/to/magic.mime. Falls nicht spezifiziert, wird die `MAGIC`-Umgebungsvariable verwendet. Falls die Umgebungsvariable nicht gesetzt ist, wird die PHP-eigene magische Datenbank benutzt. Übergibt `null` oder eine leere Zeichenfolge gleichbedeutend mit dem Standardwert.

### Rückgabewerte

(Nur prozeduraler Stil) Gibt bei Erfolg eine finfo-Instanz zurück. Bei einem Fehler wird `false` zurückgegeben.

### Changelog

Version | Beschreibung
--- | ---
8.1.0 | Gibt nun eine finfo-Instanz zurück; vorher wurde eine Ressource zurückgegeben.
8.0.3 | `magic_database` ist jetzt nullable (akzeptiert den `null`-Wert).

### Beispiele

Beispiel #1 Objektorientierter Stil

`<?php
$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic"); // gib den MIME-Typ ala mimetype-Erweiterung zurück
/* MIME-Typ für eine bestimmte Datei ermitteln */
$filename = "/usr/local/something.txt";
echo $finfo->file($filename);
?>`

Beispiel #2 Prozeduraler Stil

`<?php
$finfo = finfo_open(FILEINFO_MIME, "/usr/share/misc/magic"); // gib den MIME-Typ ala mimetype-Erweiterung zurück
if (!$finfo) {
echo "Öffnen der Fileinfo-Datenbank fehlgeschlagen";
exit();
}
/* MIME-Typ für eine bestimmte Datei ermitteln */
$filename = "/usr/local/something.txt";
echo finfo_file($finfo, $filename);
/* Verbindung schließen */
finfo_close($finfo);
?>`

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

    text/plain; charset=us-ascii

### Anmerkungen

> Hinweis: Das Benutzen der eingebundenen magischen Datenbank (indem `magic_database` und die `MAGIC`-Umgebungsvariable nicht gesetzt werden) wird generell empfohlen, sofern keine benutzerdefinierte magische Datenbank benötigt wird.

### Siehe auch

- finfo_close() - Schließt eine Fileinfo-Instanz

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open