我使用以下代码尝试了htmlentities()PHP 5 的函数:
<?php
 $string="Einstürzende Neubauten"; echo htmlentities($string);
?>
它只显示两个空格(即“”)。这是为什么?我试图用另一个字符替换“u with diaeresis”字符,它可以工作。我怎样才能得到那份工作呢?
我使用以下代码尝试了htmlentities()PHP 5 的函数:
<?php
 $string="Einstürzende Neubauten"; echo htmlentities($string);
?>
它只显示两个空格(即“”)。这是为什么?我试图用另一个字符替换“u with diaeresis”字符,它可以工作。我怎样才能得到那份工作呢?
为您的给定内容使用字符集以....例如
 $res = htmlentities ( $string, ENT_COMPAT, 'UTF-8');
有关更多信息,请查看手册 htmlentities()
您使用的是哪个 PHP 版本?
也许这可能是您的解决方案
 $string = mb_convert_encoding ($str , "UTF-8");
 // testing 
    var_dump($string);
 $res = htmlentities ( $string, ENT_COMPAT, 'UTF-8');
 // testing
    var_dump($res);
    当我将 PHP 版本从 5.2 升级到 5.6 时,我遇到了同样的问题。我写:
$res = htmlentities("Producción", ENT_IGNORE);
我得到了
Produccin
但我解决了,在连接到数据库后添加这个
mysqli_set_charset($idCon,'utf8');