我有一个数据库,我需要显示用户的记录。我正在使用htmlentities来确保没有恶意代码像这样回应给用户:
function h($string) {
return htmlentities($string, ENT_SUBSTITUTE, "UTF-8");
}
然后每当我向用户输出任何条目时调用该函数。问题是我需要能够显示丹麦字符ÆØÅ并且这些字符在正方形中显示为问号。该网站也有utf-8编码。
我已尝试在php.net上的htmlentities下列出的所有内容,并尝试找到一些创建异常或其他解决方案的解决方案,但我一直无法找到。
有人知道这个问题的解决方法吗?
答案 0 :(得分:0)
第二条评论回答了这个问题。在连接中添加charset解决了这个问题。所以对于我的PDO连接,我必须这样说:
$dbh = new PDO('mysql:dbname=myName;charset=utf8;host=myHost', 'myUser', 'myPassw0rd');
现在一切都正常显示。