将特殊字符转换为HTML字符代码

时间:2010-10-07 14:19:41

标签: php html regex content-management-system special-characters

我正在为客户开发CMS,他需要编辑内容并使用ç®等特殊字符。但是,我不希望他必须输入像®这样的字符代码。有谁知道使用PHP自动转换这些字符的好方法吗?

5 个答案:

答案 0 :(得分:15)

你可以使用htmlentities()来做到这一点。

php -r 'echo htmlentities("®ç", ENT_COMPAT, "UTF-8"), "\n";'
®ç

要将实体转回可读文本,请使用html_entity_decode():

php -r 'echo html_entity_decode("®ç", ENT_COMPAT, "UTF-8"), "\n";'
®ç

如果您不使用unicode,请省略charset名称或提供正确的字符集。

答案 1 :(得分:3)

最简单的方法是从一开始就使用UTF-8 但您也可以使用DOM自动转换字符:

$dom = new DOMDocument;
$dom->appendChild(new DOMText('© oui içi » '));
echo $dom->saveHtml();

输出

© oui içi » 

答案 2 :(得分:2)

使用unicode,并告诉他如何从字符映射中复制和粘贴: - )

答案 3 :(得分:1)

您可以使用:

htmlentities

答案 4 :(得分:0)

查看htmlentities功能。这将获取一个字符串并将组件字符转换为其HTML实体。您可以指定字符串的编码以与用户的输入保持一致。