PHP マニュアル
前のページ |  | 次のページ

# mb_output_handler

(PHP 4 >= 4.0.6)

mb_output_handler -- 出力バッファ内で文字エンコーディングを変換するコールバック関数

## 説明

string mb_output_handler ( string contents, int status)

mb_output_handler() は、 ob_start() のコールバック関数です。 mb_output_handler() は、出力バッファの文字を内 部文字エンコーディングからHTTP出力文字エンコーディングに変換します。

4.1.0以降のバージョンでは、以下の条件が満たされた場合にこのハン ドラはcharset HTTP ヘッダを設定します。

- header()で`Content-Type`が設 定されていない場合

- デフォルトのMIME型が`text/`で始まる

- `http_output` の設定がpass以外

`contents` : 出力バッファの内容

`status` : 出力バッファのステータス

返り値: 変換後の文字列

例 1mb_output_handler()の例
    mb_http_output("UTF-8");
    ob_start("mb_output_handler");

> 注意 PHP 4.3.0以降において、 イメージのようなバイナリデータをPHPスクリプトから出力したい場合、 バイナリデータを送信する前にheader()により Content-Type: ヘッダ(例：header("Content-Type: image/png"))を送信 する必要があります。Content-Type: ヘッダが送信されると出力文字コー ド変換は無効となります。

> ただし、header()により"Content-Type: text/*" を 送信した場合(例：header("Content-Type: text/hdml"))には、テキスト が送信されるとみなし、文字コード設定に基づいて出力文字コード変換を 行います。

> なお、PHP 4.3.0より前のバージョンでバイナリデータを出力する場合に は、mb_http_output()を用いて出力エンコーディン グを"pass"に設定し、変換を無効とする必要があります。

ob_start()も参照下さい。

前のページ | ホーム | 次のページ
mb_language | 上に戻る | mb_parse_str