関数・クラス解説

finfo_open

finfo::__construct

version:PHP >= 5.3.0, PECL fileinfo >= 0 (公式)

新しい fileinfo リソースを作成する

公式リファレンス

書式

finfo_open ([ int $options = FILEINFO_NONE [, string $magic_file = "" ]] ) : resource|false

説明

手続き型

オブジェクト指向型 (コンストラクタ)

public finfo::__construct ([ int $options = FILEINFO_NONE [, string $magic_file = "" ]] )

この関数は、magic データベースをオープンしてそのリソースを返します。

パラメータ

options
ひとつあるいは複数のFileinfo 定数の組み合わせ。
magic_file
magic データベースファイルの名前。通常は /path/to/magic.mime のようになります。 指定されなかった場合は、環境変数 MAGIC の値が使用されます。この環境変数も設定されていない場合は、 PHP の組み込みの magic データベースを使います。 NULL あるいは空文字列は、デフォルト値と同じ意味となります。

返値

(手続き型の場合のみ) 成功した場合に magic データベースリソース、失敗した場合に FALSE を返します。

注意

警告 PHP 5.3.11 および 5.4.1 で、magic データベースのフォーマットが変わりました。 そのため、内部的な mime データベースも更新されました。 この影響が特に及ぶのは、外部の magic を読み込んでいる場合です。 旧フォーマットの magic ファイルを読み込んでも動作しません。 また、mime タイプのテキスト表現が変わったものもあります。たとえば PHP の場合の返り値は "PHP script text" ではなく "PHP script, ASCII text" となります。

注意: 一般的には、独自の magic データベースを使う必要がある場合を除いて、 組み込みの magic データベースを使うのが一番いい方法です (magic_file を省略し、環境変数 MAGIC も設定しないようにします)。
警告 PHP 5.3.11 および 5.4.1 で、magic データベースのフォーマットが変わりました。 そのため、内部的な mime データベースも更新されました。 この影響が特に及ぶのは、外部の magic を読み込んでいる場合です。 旧フォーマットの magic ファイルを読み込んでも動作しません。 また、mime タイプのテキスト表現が変わったものもあります。たとえば PHP の場合の返り値は "PHP script text" ではなく "PHP script, ASCII text" となります。

サンプル

例1 オブジェクト指向型

$finfo = new finfo(FILEINFO_MIME, "/usr/share/misc/magic"); // mime タイプを mimetype 拡張形式で返します /* 指定したファイルの mime タイプを取得します */ $filename = "/usr/local/something.txt"; echo $finfo->file($filename);

例2 手続き型

$finfo = finfo_open(FILEINFO_MIME, "/usr/share/misc/magic"); // mime タイプを mimetype 拡張形式で返します if (!$finfo) {     echo "fileinfo データベースのオープンに失敗しました";     exit(); } /* 指定したファイルの mime タイプを取得します */ $filename = "/usr/local/something.txt"; echo finfo_file($finfo, $filename); /* 接続を閉じます */ finfo_close($finfo);

上の例の出力は以下となります。

text/plain; charset=us-ascii

参考

  • finfo_close() - fileinfo リソースを閉じる
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール