我们有一个 Web 应用程序,允许用户在文本区域中输入自己的 html。我们将该数据保存到我们的数据库中。
当我们将html数据加载到文本区域时,当然,我们在将html数据扔到文本区域之前使用htmlentities()。否则,用户可以在文本区域内保存内容,而我们的应用程序在将其加载到文本区域时会中断。
除了输入中文字符(可能还有其他语言,如阿拉伯语、日语)时,这很有效。
htmlentities() 使中文文本无法使用,如下所示: ¡
当我在将输入的 html 加载到文本区域之前删除 htmlentities() 时,中文字符显示得很好,但随后我们遇到了 HTML 干扰文本区域的问题,特别是当用户在文本区域内输入时。
我希望这是有道理的。
有谁知道我们如何安全、正确地允许在我们的文本区域内使用中文、日语等语言,同时仍然安全地在我们的文本区域内加载任何 html?
你有没有尝试过使用html特殊字符?
我目前在生产中使用它,效果很好。
$foo = "我的名字叫萨沙"
echo '<textarea>' . htmlspecialchars($foo) . '</textarea>';
交替,
$str = “你好”;
echo mb_convert_encoding($str, ‘UTF-8′, ‘HTML-ENTITIES’);
正如发现的http://www.techiecorner.com/129/php-how-to-convert-iso-character-htmlentities-to-utf-8/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)