我使用以下代码尝试了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');