1

我使用以下代码尝试了htmlentities()PHP 5 的函数:

<?php
 $string="Einstürzende Neubauten"; echo htmlentities($string);
?>

它只显示两个空格(即“”)。这是为什么?我试图用另一个字符替换“u with diaeresis”字符,它可以工作。我怎样才能得到那份工作呢?

4

2 回答 2

2

为您的给定内容使用字符集以....例如

 $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 手册

于 2013-08-16T06:13:27.713 回答
0

当我将 PHP 版本从 5.2 升级到 5.6 时,我遇到了同样的问题。我写:

$res = htmlentities("Producción", ENT_IGNORE);

我得到了

Produccin

但我解决了,在连接到数据库后添加这个

mysqli_set_charset($idCon,'utf8'); 
于 2015-11-04T21:57:07.587 回答