ホームページ > バックエンド開発 > PHPチュートリアル > 拡張子に依存せずにファイルの種類を判断するにはどうすればよいですか?

拡張子に依存せずにファイルの種類を判断するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-10-30 04:32:28
オリジナル
776 人が閲覧しました

How to Determine File Type Without Relying on Extensions?

拡張子に依存せずにファイルの種類を検出する方法

拡張子を調べるだけでなく、ファイルが mp3 形式であるか画像形式であるかを判断することは重要ですプログラミングにおけるタスク。拡張機能に依存しない包括的なソリューションは次のとおりです。

PHP >= 5.3:

<code class="php">$mimetype = finfo_fopen(fopen($filename, 'r'), FILEINFO_MIME_TYPE);</code>
ログイン後にコピー

PHP < 5.3:

<code class="php">$mimetype = mime_content_type($filename);</code>
ログイン後にコピー

代替:

  • exif_imagetype: 画像の MIME タイプを特にチェックします。
  • getimagesize: exif_imagetype に似ていますが、ライブラリの依存関係の問題がある可能性があります。

プロキシ メソッド:

より一般的なアプローチについては、これらの関数をプロキシ メソッドにラップすることを検討してください:

<code class="php">function getMimeType($filename)
{
    $mimetype = false;
    if (function_exists('finfo_fopen')) {
        // open with FileInfo
    } elseif (function_exists('getimagesize')) {
        // open with GD
    } elseif (function_exists('exif_imagetype')) {
        // open with EXIF
    } elseif (function_exists('mime_content_type')) {
        $mimetype = mime_content_type($filename);
    }
    return $mimetype;
}</code>
ログイン後にコピー

このプロキシ メソッドを使用すると、システム上で利用できるさまざまな関数に基づいてファイルの MIME タイプを簡単に判断できます。

以上が拡張子に依存せずにファイルの種類を判断するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート