建立一個 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

魔數數據庫檔名稱, 通常是 /path/to/magic.mime。 如果未指定,則使用 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

參見

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *