PHP 5.3.5 および IIS 6 を使用する Windows Server 2003 で実行されている PHP スクリプトで finfo_open を呼び出すのに問題があります。呼び出しは常に Fatal error: Call to undefined function finfo_open() in... を返します。
少し読んだだけで、fileinfo機能がWindows PHPインストールにデフォルトで含まれていないことがわかりましたが、何も試しても機能しませんでした。ここのコメント #3 の指示: http://www.php.net/manual/en/fileinfo.installation.phpは役に立ちませんでした。これは、私が見つけることができる最も公式に見える説明です。Web には mime_magic dll が必要であるという情報がたくさんありますが、これは 5.3 から不要になったようです。さらに、http://pecl.php.net/package/Fileinfoで、「PHP 5.3.0以降、この拡張機能はデフォルトで有効になっています」と読みました。どうしたの?
この問題はテスト サーバーにあります。私のローカルマシンではxamppとPHP 5.3.1があり、呼び出しは正常に機能するため、テスト時にphp_fileinfo.dllをローカルからphp \ extにコピーしようとしましたが、これも違いはありませんでした(バージョンが違いますが、5.3が重要なビットだと読みました)。
これに関するアドバイスをいただければ幸いです。
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime = finfo_file($finfo, $filepath);