Callback-функция, преобразующая кодировку символов в выходном буфере


(PHP 4 >= 4.0.6, PHP 5)

mb_output_handler Callback-функция, преобразующая кодировку символов в выходном буфере

Описание

string mb_output_handler ( string $contents , int $status )

mb_output_handler() является callback-функцией функции ob_start(). mb_output_handler() преобразует символы в выходном буфере из внутренней кодировки в кодировку HTTP вывода.

Список параметров

contents

Содержимое выходного буфера.

status

Состояние выходного буфера.

Возвращаемые значения

Преобразованная строка string.

Список изменений

Версия Описание
4.1.0

Этот обработчик добавляет заголовок набора символов HTTP, если выполняются следующие условия:

  • Тэг Content-Type не задан функцией header().
  • MIME-тип по умолчанию начинается с text/.
  • Настройка mbstring.http_input отличается от pass.

Примеры

Пример #1 Пример использования mb_output_handler()

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

Примечания

Замечание:

Если вы хотите вывести двоичные данные, изображение например, из скрипта PHP 4.3.0 или выше, необходимо передать заголовок Content-Type с помощью функции header() до того, как какие-либо двоичные данные будут переданы клиенту. (например header("Content-Type: image/png")). Если заголовок Content-Type передан, преобразование кодировок выходных символов производиться не будет.

Следует заметить, что если передан заголовок 'Content-Type: text/*', пересылаемые данные принимаются как текст, к которому будет применена конвертация символов в соответствии с настройками кодировок.

Если вы хотите вывести двоичные данные, изображение например, из скрипта PHP версий 4.2.x или более ранних, необходимо задать выходной кодировке значение "pass" посредством функции mb_http_output().

Смотрите также

  • ob_start() - Включение буферизации вывода