允许某些(丹麦语)字符具有htmlentities


Allowing certain ( Danish ) characters with htmlentities

我有一个数据库,需要在其中为用户显示记录。我正在使用htmlentities来确保没有恶意代码像这样被回显给用户:

    function h($string) {
      return htmlentities($string, ENT_SUBSTITUTE, "UTF-8");
    }

然后每当我向用户输出任何条目时调用该函数。问题是,我需要能够显示丹麦字符ÆÅ,这些字符显示为正方形中的问号。该网站也有utf-8编码。

我已经尝试了php.net上htmlentities下列出的所有内容,并试图找到一些创建异常的解决方案或其他解决方案,但我一直找不到。

有人知道这个问题的解决方法吗?

第二个注释回答了这个问题。在连接中添加字符集解决了问题。所以对于我的PDO连接,我不得不这样说:

    $dbh = new PDO('mysql:dbname=myName;charset=utf8;host=myHost', 'myUser', 'myPassw0rd');

现在一切都显示正常。