mime_content_type()
は推奨されていません。それは私が恐れていたものです:PHP5でPECL拡張子を持たないローカルファイルのMIMEタイプを取得しますか?
にはどうすればMIME type of a local file
がPHP5
を使用しますが、この非推奨メソッドまたはPECL fileinfo extension?
Editを使用しなくても見つけることができます。残念なことに、常に利用できるとは限らない拡張機能を必要とする組み込み関数の使用を非推奨にしました。
mime_content_type()
は推奨されていません。それは私が恐れていたものです:PHP5でPECL拡張子を持たないローカルファイルのMIMEタイプを取得しますか?
にはどうすればMIME type of a local file
がPHP5
を使用しますが、この非推奨メソッドまたはPECL fileinfo extension?
Editを使用しなくても見つけることができます。残念なことに、常に利用できるとは限らない拡張機能を必要とする組み込み関数の使用を非推奨にしました。
fileinfo拡張機能を使用できず、mime_content_typeを使用したくない場合は、オプションが制限されます。
ほとんどの場合、ファイル拡張子に基づいてルックアップを行う必要があります。 mime_content_typeはもっとインテリジェントなことを行い、実際にMIMEタイプを特定するためにファイル内の特別なデータを探しました。
getID3()ライブラリは、すばやく簡単な作業のほとんどのオプションです。もともと、プロジェクトでMP3 ID3のデータを取得するために命名されたライブラリは、それよりも2つの重要なことを行い、あらゆる種類の一般的なファイルや奇妙なファイルのメタデータタスクに非常に便利です。
私はこれを使用して、オンラインの画像およびビデオツール用のファイルのMIMEタイプを取得しました。私が行ったすべてのテストで、getID3がMIMEタイプを間違って取得するのを見たことがありません。
また、QuickTimeビデオにストリーミングヒントがあるかどうかを確認するためにも使用しました。私は多才さの例としてこれを言及します。
もう一度時間のかかるオプションは、既に提案されているように独自のMIMEタイプチェッカーをロールすることです。 MIMEマジックファイルをお持ちの場合は、最初のnバイトのファイルデータとMIMEマジックファイルから取得したMIMEタイプルックアップテーブルの最初のnバイトを比較することにより、ファイル拡張子のルックアップよりも少し先に進むことができます。
典型的なMIMEマジックファイルには、500種類以上のMIMEタイプが含まれているため、比較が遅くなる場合があります(多くのチェックを行います)。ホームロールソリューションで最も一般的な10種類のMIMEタイプチェックをハードコーディングすると、そこに役立ちます。