finfo_openfinfo::__construct 创建一个 fileinfo 资源

发表日期:2021-07-01 08:55:35 | 来源: | | 浏览(977) 分类:Fileinfo 函数

finfo_open

finfo::__construct

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

finfo_open -- finfo::__construct创建一个 fileinfo 资源

说明

过程化风格

finfo_open(int $options = FILEINFO_NONE, string $magic_file = null): resource

面向对象风格 (构造器):

public finfo::__construct(int $options = FILEINFO_NONE, string $magic_file = null)

本函数打开一个魔数数据库并且返回它的资源。

参数


  • options

  • 一个 Fileinfo       常量 或多个 Fileinfo 常量 进行逻辑或运算。

  • magic_file

  • 魔数数据库文件名称,        通常是。        如果未指定,则使用 MAGIC 环境变量。        如果未指定此环境变量,        则使用 PHP 绑定的魔数数据库。

    传入 null 或者空字符串,等同于使用默认值。


返回值

(仅适用于过程化风格)   如果成功则返回一个表示魔数数据库的资源,    或者在失败时返回 false

注释

警告  

在 PHP 5.3.11 和 5.4.1 中预期的魔数数据库格式发生了变动,    所以,内置的魔数数据库被更新。    如果使用了外部魔数数据库,    可能会由于格式不同导致读取失败。        同时,一些 mime 类型的文字表示也发生了变化,    例如,PHP 文件的 mime 类型由 “"PHP script text”    变为“PHP script, ASCII text”。

注意:

通常来说,使用 PHP 绑定的魔数数据库(设置 magic_file 参数为空,    不设置 MAGIC 环境变量)是最好的选择,    除非你确实需要一个自定义的魔数数据库。


范例

示例 #1 面向对象风格

<?php 
$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic");
 // 返回 mime 类型/* 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");
 // 返回 mime 类型
 if (!$finfo) {
    echo "Opening fileinfo database failed";
    exit();
}
/* 获取指定文件的 mime 类型 */
$filename = "/usr/local/something.txt";
echo finfo_file($finfo, $filename);
/* 关闭资源 */
finfo_close($finfo);
?>

以上例程会输出:

text/plain; charset=us-ascii

参见



集速网 copyRight © 2015-2022 宁ICP备15000399号-1 宁公网安备 64010402001209号
与其临渊羡鱼,不如退而结网
欢迎转载、分享、引用、推荐、收藏。