使用PHP文件扩展名(windows wamp)时出现意外错误


unexpected error with php fileinfo extension usage (windows wamp)

我在windows7 (Apache: 2.4.9, PHP: 5.5.12)下使用wampserver.com的当前wamp。文件上传脚本与文件信息功能有问题。麻烦,我没有与linux灯和专业托管公司。未找到Finfo类是错误。我在php.ini中添加了这条语句,以便在win7 wamp

下使用finfo。
extension=php_fileinfo.dll

我能够使用文件信息对象和函数。但是当我试图销毁finfo对象时出现了一个奇怪的错误。

错误:

Warning: finfo_close() expects parameter 1 to be resource

脚本:

...
$finfo = new finfo(FILEINFO_MIME_TYPE);
$semamime = $finfo->file($_FILES['filedata']['tmp_name']);
if (false === $ext = array_search(
      $finfo->file($_FILES['filedata']['tmp_name']),
      array(
          'pdf' => 'application/pdf',
      ),
      true
)) {
throw new RuntimeException('Invalid file format.');
}
!!!! finfo_close($finfo); !!!
...

文件存在。我在屏幕上看到文件内容的ANSI形式。我给了finfo_close一个合法的参数,但是运气不好。这个错误是关于我的语法还是我使用的wamp ?

编辑

完整脚本:http://pastebin.com/x8Bbv5S4

php.ini文件:http://pastebin.com/9KjVjThU(扩展名在最后一行激活)

手册中finfo_open的示例仅显示在使用finfo_open的过程风格时使用finfo_close -在面向对象风格(new finfo(…))的第一个示例中,您会注意到那里没有对finfo_close的调用…所以我认为在这种情况下根本不需要。