Just a quick note that may be helpful for some:
It seems to me that this function also modifies the HTTP Content-Type header that's sent to the client (at least in combination with the iconv_set_encoding() function).
If you specify an encoding ending with "//TRANSLIT" or "//IGNORE" (valid in iconv), it will still send the encoding name in the HTTP header. This makes it an invalid character set unfortunately.
For example:
<?php
iconv_set_encoding("internal_encoding","UTF-8");
iconv_set_encoding("output_encoding","ISO-8859-1//TRANSLIT");
ob_start("ob_iconv_handler");
?>
will send a Content-Type header of "ISO-8859-1//TRANSLIT".
ob_iconv_handler
(PHP 4 >= 4.0.5, PHP 5)
ob_iconv_handler — Convierte la codificación de caracteres al manejador del buffer de salida
Descripción
string ob_iconv_handler
( string
$contents
, int $status
)
Convierte el string codificado en internal_encoding a
output_encoding.
internal_encoding y
output_encoding deberían estar definidos en el
fichero php.ini o en iconv_set_encoding().
Parámetros
Ver ob_start() para más información sobre los parámetros del manejador.
Valores devueltos
Ver ob_start() para mas información sobre los valores de retorno del manejador.
Ejemplos
Ejemplo #1 Ejemplo de ob_iconv_handler()
<?php
iconv_set_encoding("internal_encoding", "UTF-8");
iconv_set_encoding("output_encoding", "ISO-8859-1");
ob_start("ob_iconv_handler"); // empieza a usarse el buffer de salida
?>
Ver también
- iconv_get_encoding() - Recupera variables de configuración interna de la extensión iconv
- iconv_set_encoding() - Establece las opciones para la conversión de codificación de caracteres
- output-control functions
st33mann at gmx dot n3t ¶
7 years ago
