2010-02-26 119 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()。为我工作。