PHP:htmlentities和htmlspecialchars不转换某些字符

时间:2012-06-18 11:58:57

标签: php mysql html-entities htmlspecialchars

我正在尝试将所有特殊字符转换为HTML安全实体进入我的数据库,但我似乎无法让PHP处理某些字符。例如,如果我的字符串包含以下任何内容:¡£¢∞§¶它将变为空字符串。

例如,以下字符串:

Hello£

在POST后通过以下代码处理后变为空字符串:

$workDetails["copy"] = htmlentities($workDetails["copy"], ENT_QUOTES, "UTF-8");

我认为我做错了什么? :(

1 个答案:

答案 0 :(得分:1)

如果您通过header()命令将网站编码更改为UTF-8,可能就足够了:

PHP中的

header("Content-Type: text/html; charset=utf-8");

如果您使用HTML模板顶部的

<?xml version="1.0" encoding="utf-8" ?>;

但是如果你肯定需要将这些字符转换为特定的html代码,你应该创建自己的函数来替换htmlspecialchars()未涵盖的符号。

相关问题