Web aym.pekori.to

LXXXI. Mimetype 関数

導入

警告

この拡張モジュールは廃止予定です。PECL の Fileinfo 拡張モジュールが、同等の機能(に加えてそれ以上の機能)を よりきれいな方法で提供しています。

このモジュールの関数は、ファイル内の特定の位置にある magic バイトシーケンスを探すことにより ファイルの content type とエンコーディングの推定を試みます。 この手法は失敗する可能性がないわけではありませんが、経験上 非常に良い結果が得られます。

この拡張モジュールは、Apache の mod_mime_magic から派生したものです。 mod_mime_magic は、Ian F. Darwin により管理されている file コマンドに基づいています。 より詳細な履歴や著作権についてはソースコードを参照してください。

要件

外部ライブラリを必要としません。

インストール手順

mime-type 関数をサポートするためには、configure スイッチ --with-mime-magic を付けて PHP をコンパイルする必要があります。この拡張モジュールは、 Apache httpd と共に配布されているシンプル版の magic ファイルのコピーを必要とします。

注意: configure オプションは、PHP 4.3.2 以降 --enable-mime-magic から --with-mime-magic に変更されています。

注意: この拡張モジュールには、付加機能が多くついた magic ファイルを処理する機能はありません(この magic ファイルは、標準的なLinuxディストリビューションに付属しており、 最近のバージョンの file コマンドで使用されている ようです)。

Win32 ユーザへの注意: このモジュールを Windows 環境で使用するには、バンドルされた magic.mime へのパスを php.ini に設定する必要 があります。

例 1. magic.mime のパスの設定例

mime_magic.magicfile = "$PHP_INSTALL_DIR\magic.mime"

上の例の $PHP_INSTALL_DIR を実際の PHP のパス、例えば、c:\php に置き換えてください。

実行時設定

php.ini の設定により動作が変化します。

表 1. Mimetype 設定オプション

名前デフォルト変更の可否変更履歴
mime_magic.debug"0"PHP_INI_SYSTEMPHP 5.0.0 以降で利用可能
mime_magic.magicfile"/path/to/php/magic.mime"PHP_INI_SYSTEMPHP 4.3.0 以降で利用可能
PHP_INI_* 定数の詳細および定義については 付録G を参照してください。

以下に設定ディレクティブに関する 簡単な説明を示します。

mime_magic.debug bool

デバッグを有効/無効にする

mime_magic.magicfile string

magic.mime ファイルへのパス

リソース型

リソース型は定義されていません。

定義済み定数

定数は定義されていません。

目次
mime_content_type -- ファイルの MIME Content-type を検出する