the "close" method does not exists, as it is the default deconstructior there is no need to call it.
finfo_open
finfo::__construct
(PHP >= 5.3.0, PECL fileinfo >= 0.1.0)
finfo_open -- finfo::__construct — Create a new fileinfo resource
Beschreibung
Prozeduraler Stil
$options = FILEINFO_NONE
[, string $magic_file = NULL
]] )Objektorientierter Stil (constructor):
$options = FILEINFO_NONE
[, string $magic_file = NULL
]] )This function opens a magic database and returns its resource.
Parameter-Liste
-
options -
One or disjunction of more Fileinfo constants.
-
magic_file -
Name of a magic database file, usually something like /path/to/magic.mime. If not specified, the MAGIC environment variable is used. If this variable is not set either, /usr/share/misc/magic is used by default. A .mime and/or .mgc suffix is added if needed.
Passing NULL or an empty string will be equivalent to the default value.
Rückgabewerte
(Procedural style only)
Returns a magic database resource on successIm Fehlerfall wird FALSE zurückgegeben..
Anmerkungen
As of PHP >= 5.3.11 and >= 5.4.1 the magic datababase format has changed. Due to this, the internal mime database was upgraded. This affects especially the code where external magic is read in. Reading in magic files of the older formats will not work. Also, some textual representations of the mime types has changed, for instance for PHP would be "PHP script, ASCII text" instead of "PHP script text" returned.
Beispiele
Beispiel #1 Objektorientierter Stil
<?php
$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic"); // return mime type ala mimetype extension
/* get mime-type for a specific file */
$filename = "/usr/local/something.txt";
echo $finfo->file($filename);
?>
Beispiel #2 Prozeduraler Stil
<?php
$finfo = finfo_open(FILEINFO_MIME, "/usr/share/misc/magic"); // return mime type ala mimetype extension
if (!$finfo) {
echo "Opening fileinfo database failed";
exit();
}
/* get mime-type for a specific file */
$filename = "/usr/local/something.txt";
echo finfo_file($finfo, $filename);
/* close connection */
finfo_close($finfo);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
text/plain; charset=us-ascii
finfo_open
04-Jun-2007 06:13
06-May-2007 09:55
On Windows systems people might find that this always returns "application/x-dpkg".
There are 2 ways of solving this problem:
1. Get the mime-magic database file from GnuWin32 at <http://sourceforge.net/projects/gnuwin32/>
2. You can manually "fix" the mime-magic file by editing it and escaping all lines starting with !, thus changing each one to \!