use HTML::Entities;
$output = encode_entities($str);
有时上面的函数生成�
,它不会在浏览器中显示,如下所示:
问题是什么?如何让这样的实体正确显示?
encode_entities_numeric
会更好吗?
编辑:我应该使用以下内容吗?
use HTML::Entities;
utf8::decode($str);
$output = encode_entities($str);
答案 0 :(得分:2)
如果encode_entities($str)
生成�
,则$str
包含字符0xFFFD
。
因此,如果您不希望encode_entities($str)
生成�
,请不要将字符0xFFFD
放入$str
。它可能是由于字符解码错误(例如输入错误或输入处理不当)而添加的。您需要进行调试才能找到潜在的问题。