2010-02-26 180 views
0

我在5.3.1上,在看完文檔後,我看到包含fileinfo,並且pecl不再需要。我一但獲得:finfo path not found

finfo_file():文件名或路徑沒有找到

我不知道它在尋找。我已經啓用的ini文件擴展名,並試圖從運行PHP網站的例子:

$finfo = finfo_open(FILEINFO_MIME_TYPE); // return mime type ala mimetype extension 
foreach (glob("*") as $filename) { 
    echo finfo_file($finfo, $filename) . "\n"; 
} 
finfo_close($finfo); 

有人能告訴我,我需要什麼文件?

回答

0

您需要可以配置你的環境,使PHP知道哪裏有「神奇數據庫文件」是,或者,作爲另一種可能性,稱fileinfo_open的時候,你需要指定魔數據庫文件的路徑(引用)

一個神奇的數據庫文件的名稱,通常是 類似於/path/to/magic.mime
如果未指定 ,則使用MAGIC環境變量 變量。
如果此變量爲 未設置,則默認使用/usr/share/misc/magic 。如果需要,可以添加.mime和/或 .mgc後綴。


fileinfo_open手冊頁上給出的例子,例如(引用)

$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); 

當然,你來找到此文件是您的系統上...

+0

嘿帕斯卡爾,謝謝你的手在這裏。我的印象是包含了mime數據庫,並且我不需要下載它。我不知道它在哪裏。我只是檢查了PHP目錄,沒有幻想MIME或MIME文件。如果我在5.3.1上,你確定我需要它嗎? – Jim 2010-02-26 08:07:31

+0

mime數據庫與PHP沒有特別的關係 - 它可能是由其他一些軟件包提供的...... – 2010-02-26 08:16:07

+0

好的,我需要它還是它捆綁在5.3中?我的印象是它是捆綁在一起的。我也在網上找它,找不到它。它位於PECL網站上的最後一個地方,但我無法找到它。 – Jim 2010-02-26 08:18:12

2

我剛剛從我的託管公司發現,運行時找到難以捉摸的magic.mime文件的路徑phpinfo():尋找entr y「mime_magic.magicfile」。如果沒有列出,請聯繫您的託管公司,並解釋您需要此文件和路徑爲PHP finfo()。爲我工作。