MB_OUTPUT_HANDLER(3) 1 MB_OUTPUT_HANDLER(3)
mb_output_handler - Callback function converts character encoding in output buffer
SYNOPSIS
string mb_output_handler (string $contents, int $status)
DESCRIPTION
mb_output_handler(3) is ob_start(3) callback function. mb_output_handler(3) converts characters in the output buffer from internal charac-
ter encoding to HTTP output character encoding.
PARAMETERS
o $contents
- The contents of the output buffer.
o $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: |
| | |
| | o Content-Type has not been set, |
| | using header(3). |
| | |
| | o The default MIME type begins with |
| | text/. |
| | |
| | o The mbstring.http_input setting |
| | is something other than |
| | pass. |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
mb_output_handler(3) example
<?php
mb_http_output("UTF-8");
ob_start("mb_output_handler");
?>
NOTES
Note
If you want to output binary data, such as an image, using PHP 4.3.0 or later, a Content-Type: header must be set using header(3)
before any binary data is sent to the client (e.g. header("Content-Type: image/png")). If Content-Type: header is sent, output char-
acter encoding conversion will not be performed.
Note that if 'Content-Type: text/*' is sent, the content body is regarded as text; conversion will take place.
If you want to output binary data, such as an image, using PHP 4.2.x or earlier, you must set output encoding to "pass" using
mb_http_output(3).
SEE ALSO
ob_start(3).
PHP Documentation Group MB_OUTPUT_HANDLER(3)