array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.finfo-open.php', 1 => 'finfo_open', ), 'up' => array ( 0 => 'ref.fileinfo.php', 1 => 'Функции модуля Fileinfo', ), 'prev' => array ( 0 => 'function.finfo-file.php', 1 => 'finfo_file', ), 'next' => array ( 0 => 'function.finfo-set-flags.php', 1 => 'finfo_set_flags', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/fileinfo/functions/finfo-open.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP >= 5.3.0, PHP 7, PHP 8, PECL fileinfo >= 0.1.0)
finfo_open -- finfo::__construct — Создаёт экземпляр finfo
Процедурный стиль
Объектно-ориентированный стиль (конструктор):
Данная функция открывает магическую базу данных и возвращает экземпляр.
flags
Одна или несколько объединённых через бинарное ИЛИ констант Fileinfo.
magic_database
Имя файла магической базы данных, обычно что-то наподобие этого:
/path/to/magic.mime.
Если не указан полный путь, будет использована переменная окружения MAGIC
.
Если переменная окружения не указана, то будет использоваться встроенная в PHP магическая база данных.
Передача null
или пустой строки эквивалентно значению по умолчанию.
(Только процедурный стиль)
Возвращает экземпляр finfo в случае успешного выполнения или false
, если возникла ошибка.
Версия | Описание |
---|---|
8.1.0 | Возвращает экземпляр finfo; ранее возвращался ресурс (resource). |
8.0.3 |
magic_database теперь допускает значение null.
|
Пример #1 Объектно-ориентированный стиль
<?php
$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic"); // возвращает mime-тип а-ля mimetype расширения
/* получить mime-type для указанного файла */
$filename = "/usr/local/something.txt";
echo $finfo->file($filename);
?>
Пример #2 Процедурный стиль
<?php
$finfo = finfo_open(FILEINFO_MIME, "/usr/share/misc/magic"); // возвращает mime-тип а-ля mimetype расширения
if (!$finfo) {
echo "Открытие базы данных fileinfo не удалось";
exit();
}
/* получить mime-type для указанного файла */
$filename = "/usr/local/something.txt";
echo finfo_file($finfo, $filename);
/* закрыть соединение */
finfo_close($finfo);
?>
Результат выполнения приведённого примера:
text/plain; charset=us-ascii
Замечание:
Обычно использование встроенной магической базы данных (при неустановленных
magic_database
иMAGIC
) лучший выбор, если вам не нужна определённая версия магической базы данных.