mb_list_encodings
mb_parse_str
Multibyte String Functions
PHP Manual

# mb_output_handler

(PHP 4 >= 4.0.6, PHP 5)

mb_output_handler — Callback function converts character encoding in output buffer

### Description

string mb_output_handler ( string `$contents` , int `$status` )

mb_output_handler() is ob_start() callback function. mb_output_handler() converts characters in the output buffer from internal character encoding to HTTP output character encoding.

### Parameters

`contents`

  The contents of the output buffer.

`status`

  The status of the output buffer.

### Return Values

The converted string.

### ChangeLog

Version | Description
--- | ---

4.1.0

This handler now adds the charset HTTP header when the following conditions are met:

- Does not set Content-Type, using header().
- The default MIME type begins with text/.
- The mbstring.http_input setting is something other than pass.

### Examples

Example #1 mb_output_handler() example

`<?php
mb_http_output("UTF-8");
ob_start("mb_output_handler");
?>`

### Notes

> Note: If you want to output some binary data such as image from PHP script with PHP 4.3.0 or later, Content-Type: header must be send using header() before any binary data was send to client (e.g. header("Content-Type: image/png")). If Content-Type: header was send, output character encoding conversion will not be performed.
> Note that if 'Content-Type: text/*' was send using header(), the sending data is regarded as text, encoding conversion will be performed using character encoding settings.
> If you want to output some binary data such as image from PHP script with PHP 4.2.x or earlier, you must set output encoding to "pass" using mb_http_output().

### See Also

- ob_start()

mb_list_encodings
mb_parse_str
Multibyte String Functions
PHP Manual