Exif 関数
導入
exif 拡張モジュールを使用すると、画像のメタデータを扱うことが可能と なります。例えば、デジタルカメラで撮影した画像ファイルから JPEG や TIFF 画像のヘッダ情報を 読み込むために exif 関数を使用することができます。要件
--enable-exif オプションを含めて PHP がコンパイル されている必要があります。exif モジュールを作成するために、追加の ライブラリは一切必要ありません。Windows ユーザは、 mbstring 拡張モジュールを有効に する必要があります。インストール手順
exif サポートを有効にするには、PHP の configure 時に --enable-exif を指定します。Windows ユーザは、php.ini で php_mbstring.dll および php_exif.dll の両方の DLL を有効にする 必要があります。php_mbstring.dll DLL は、必ず php_exif.dll DLL より 先に 読み込まれていなければなりません。そうなるように php.ini で設定 してください。
実行時設定
php.ini の設定により動作が変化します。mbstring が有効になっている場合、 Exif 拡張モジュールはユーザコメントの文字エンコーディングの変換 (Unicode と JIS)を自動的に行います。この処理が行われるのは、 指定した文字セットを使用して最初にコメントをデコードする際です。 その結果は、HTTP 出力用の文字コードにエンコード されます。 表 85. Exif 設定オプション
名前 | デフォルト | 変更の可否 | 変更履歴 |
---|---|---|---|
exif.encode_unicode | "ISO-8859-15" | PHP_INI_ALL | PHP 4.3.0 以降で有効です。 |
exif.decode_unicode_motorola | "UCS-2BE" | PHP_INI_ALL | PHP 4.3.0 以降で有効です。 |
exif.decode_unicode_intel | "UCS-2LE" | PHP_INI_ALL | PHP 4.3.0 以降で有効です。 |
exif.encode_jis | "" | PHP_INI_ALL | PHP 4.3.0 以降で有効です。 |
exif.decode_jis_motorola | "JIS" | PHP_INI_ALL | PHP 4.3.0 以降で有効です。 |
exif.decode_jis_intel | "JIS" | PHP_INI_ALL | PHP 4.3.0 以降で有効です。 |
PHP_INI_* 定数の詳細および定義については 付録 G. php.ini ディレクティブ を参照してください。
以下に設定ディレクティブに関する 簡単な説明を示します。
- exif.encode_unicode string
-
exif.encode_unicode は、UNICODE ユーザコメント
を処理する文字セットを定義します。デフォルトは ISO-8859-15 で、
アジア以外のほとんどの国で動作します。この設定は、空白
あるいは mbstring のサポートするエンコーディングである必要があります。
空白の場合は mbstring の内部エンコーディング設定が使用されます。
- exif.decode_unicode_motorola string
-
exif.decode_unicode_motorola は、画像の
バイトオーダーがモトローラ形式(ビッグエンディアン)であった場合に
Unicode のユーザコメントを扱うための内部文字セットを定義します。
この設定は空白にすることはできず、mbstring がサポートしている
エンコーディングの中から指定します。デフォルトは UCS-2BE です。
- exif.decode_unicode_intel string
-
exif.decode_unicode_intel は、画像の
バイトオーダーがインテル形式(リトルエンディアン)であった場合に
Unicode のユーザコメントを扱うための内部文字セットを定義します。
この設定は空白にすることはできず、mbstring がサポートしている
エンコーディングの中から指定します。デフォルトは UCS-2LE です。
- exif.encode_jis string
-
exif.encode_jis は、JIS ユーザコメントを
処理する文字セットを定義します。デフォルトは空白で、これは
mbstring の内部設定を使用させることを意味します。
- exif.decode_jis_motorola string
-
exif.decode_jis_motorola は、画像の
バイトオーダーがモトローラ形式(ビッグエンディアン)であった場合に
JIS のユーザコメントを扱うための内部文字セットを定義します。
この設定は空白にすることはできず、mbstring がサポートしている
エンコーディングの中から指定します。デフォルトは JIS です。
- exif.decode_jis_intel string
-
exif.decode_jis_intel は、画像の
バイトオーダーがインテル形式(リトルエンディアン)であった場合に
JIS のユーザコメントを扱うための内部文字セットを定義します。
この設定は空白にすることはできず、mbstring がサポートしている
エンコーディングの中から指定します。デフォルトは JIS です。
リソース型
リソース型は定義されていません。定義済み定数
以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。- EXIF_USE_MBSTRING (integer)
exif_imagetype() は、関連するいくつかの組み込み定数を 一覧表示します。
目次
- exif_imagetype — イメージの型を定義する
- exif_read_data — JPEG あるいは TIFF から EXIF ヘッダを読み込む
- exif_tagname — インデックスに対応するヘッダ名を取得する
- exif_thumbnail — TIFF あるいは JPEG 形式の画像に埋め込まれたサムネイルを取得する
- read_exif_data — exif_read_data() のエイリアス
固有名詞の分類
Weblioに収録されているすべての辞書からExif 関数を検索する場合は、下記のリンクをクリックしてください。

- Exif 関数のページへのリンク