# 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 output buffer from internal character encoding to HTTP output character encoding.

4.1.0 or later version, this handler adds charset HTTP header when following conditions are met:

- Does not set Content-Type by header()
- Default MIME type begins with text/
- http_output setting is other than pass

`contents` : Output buffer contents

`status` : Output buffer status

Return Value: String converted

Example#1 mb_output_handler() example

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

> 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().