ob_iconv_handler

(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)

ob_iconv_handler将字符编码转换为输出缓冲区处理程序

描述

ob_iconv_handler(string $contents, int $status): string

将以 internal_encoding 编码的字符串转换为 output_encoding

internal_encodingoutput_encoding 应在 php.ini 文件或 iconv_set_encoding() 中定义。

参数

有关此处理程序参数的信息,请参见 ob_start()

返回值

有关此处理程序返回值的信息,请参见 ob_start()

示例

示例 #1 ob_iconv_handler() 示例

<?php
iconv_set_encoding
("internal_encoding", "UTF-8");
iconv_set_encoding("output_encoding", "ISO-8859-1");
ob_start("ob_iconv_handler"); // 启动输出缓冲
?>

参见

添加备注

用户贡献的备注 1 个备注

1
st33mann at gmx dot n3t
18 年前
只是一个可能对某些人有帮助的快速说明
在我看来,此函数还会修改发送到客户端的 HTTP Content-Type 标头(至少与 iconv_set_encoding() 函数结合使用)。

如果您指定以“//TRANSLIT”或“//IGNORE”结尾的编码(在 iconv 中有效),它仍然会在 HTTP 标头中发送编码名称。不幸的是,这使得它成为一个无效的字符集。

例如
<?php
iconv_set_encoding
("internal_encoding","UTF-8");
iconv_set_encoding("output_encoding","ISO-8859-1//TRANSLIT");
ob_start("ob_iconv_handler");
?>
将发送 Content-Type 标头“ISO-8859-1//TRANSLIT”。
To Top