1

画像をアップロードしようとしましたが、次のメッセージが表示されました。

finfo_open() [function.finfo-open]: マジック データベースの読み込みに失敗しました ...(プロジェクト内のファイルの場所)

その場所にmagicmagic.mgcmagic.mime、およびmagic.mime.mgcがあります。

数日前に PHP 5.3.15 にアップデートしました。PHPマニュアルでこのメモを見ました:

PHP >= 5.3.11 および >= 5.4.1 以降、マジック データベースの形式が変更されました。これにより、内部の MIME データベースがアップグレードされました。これは、特に外部マジックが読み込まれるコードに影響します。古い形式のマジック ファイルの読み込みは機能しません。また、MIME タイプの一部のテキスト表現が変更されました。たとえば、PHP の場合、「PHP スクリプト テキスト」ではなく「PHP スクリプト、ASCII テキスト」が返されます。

プロジェクトは最初に PHP 5.3.2 で開発されました。これは、マジック データベース ファイルの形式が正しくないということですか?

フォーマットが間違っている場合、新しいバージョンのマジック データベースはどこにありますか? または、他の解決策は何ですか?Macports で Mountain Lion を使用しています。

4

1 に答える 1

1

解決策を見つけました。外部の魔法のデータベースを使用しないでください。finfo_open は、システムのデフォルトのものを使用します。

于 2012-08-10T17:55:23.227 に答える