finfo_open
(PHP >= 5.3.0, PECL fileinfo >= 0.1.0)
finfo_open - finfo :: __ construct - 创建一个新的fileinfo资源
Description
程序风格
resource finfo_open ([ int $options = FILEINFO_NONE [, string $magic_file = NULL ]] )
Object oriented style (constructor):
public finfo::__construct ([ int $options
= FILEINFO_NONE , string $magic_file
= NULL
] )
这个函数打开一个神奇的数据库并返回它的资源。
参数
options
一个或多个Fileinfo常量的分离。
magic_file
神奇的数据库文件的名称,通常类似于/path/to/magic.mime。如果未指定,则使用MAGIC环境变量。如果未设置环境变量,则将使用PHP的捆绑魔术数据库。
传递NULL
或空字符串将相当于默认值。
返回值
(仅限程序样式)成功或FALSE
失败时返回魔术数据库资源。
注意
警告
预期的魔术数据库格式在PHP 5.3.11和5.4.1中更改。由于这个原因,内部神奇的数据库被升级了。这主要影响使用外部魔术数据库的代码:读取较旧的魔术文件现在将失败。另外,mime类型的一些文本表示已经改变,例如对于PHP将是“PHP脚本,ASCII文本”而不??是“PHP脚本文本”返回。
注意:通常,使用捆绑的魔法数据库(通过离开
magic_file
和MAGIC环境变量未设置)是最佳的操作过程,除非您特别需要自定义魔术数据库。
例子
Example#1面向对象的风格
<?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);
?>
示例#2程序风格
<?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);
?>
上面的例子将输出:
text/plain; charset=us-ascii
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com