Php UTF8_解码字符串中的错误解码(符号)

Php UTF8_解码字符串中的错误解码(符号),php,Php,我正在为我的网站开发一个rss提要。问题是当我试图解码内容时,有些字符没有正确解码 这是我表格中“html”行上的字符串,带有utf8\u spanish2\u ci排序规则: 我使用utf8\u encode保存数据 <p style="text-align: center">Calidad: ⦠BRrip<br />Peso: ⦠693 Mb<br />Duración: ⦠1:33:09 Hs.<br />Codec video

我正在为我的网站开发一个rss提要。问题是当我试图解码内容时,有些字符没有正确解码

这是我表格中“html”行上的字符串,带有
utf8\u spanish2\u ci
排序规则: 我使用
utf8\u encode
保存数据

<p style="text-align: center">Calidad: ⦠BRrip<br />Peso: ⦠693 Mb<br />Duración: ⦠1:33:09 Hs.<br />Codec video: ⦠Xvid<br />Formato: ⦠Avi<br />Resolución: ⦠640 x 272<br />Bitrate del video: ⦠904 Kbps<br />Frame rate: ⦠23.976 fps<br />Idioma: ⦠Español Latino<br />Codec Audio: ⦠MP3<br />Bitrate Audio: ⦠128 Kb/s 44100hz<br />Subtitulos: ⦠No Tiene</p>

字符串应为:

<p style="text-align: center">Calidad: … BRrip<br />Peso: … 693 Mb<br />Duración: … 1:33:09 Hs.<br />Codec video: … Xvid<br />Formato: … Avi<br />Resolución: … 640 x 272<br />Bitrate del video: … 904 Kbps<br />Frame rate: … 23.976 fps<br />Idioma: … Español Latino<br />Codec Audio: … MP3<br />Bitrate Audio: … 128 Kb/s 44100hz<br />Subtitulos: … No Tiene</p>

卡里达:…BRrip
比索:…693 Mb
杜拉西翁:…1:33:09 Hs.
编解码器视频:…Xvid
格式:…Avi
分辨率:…640 x 272
视频比特率:…904 Kbps
帧速率:…23.976 fps
惯用语:…西班牙人拉丁语
编解码器音频:…MP3
比特率音频:…128 kbs 44100hz
子音频:…无蒂恩


这是我的完整代码:

<?php
header('Content-Type: application/rss+xml; charset=utf-8');
echo '<?xml version="1.0" encoding="utf-8"?>';
echo "\n<rss version='2.0'>";
echo "<channel>\n";
echo "<title>Feed Juegos</title>\n";
echo "<link>http://example.com</link>\n";
echo "<description>Ultimas Entradas Xxx Javi</description>\n";

        DEFINE ('USER', 'zadmin_new'); 
        DEFINE ('PWW', 'mierda');  
        DEFINE ('HOST_BD', 'localhost');  
        DEFINE ('DBNAME', 'zadmin_warezo'); 

        $conexion = mysql_connect(HOST_BD, USER, PWW) or  
        die ('No se pudo conectar a la BD');  
        mysql_select_db(DBNAME) or die ('Error in connection');  

        $query= "SELECT * FROM posts WHERE id_cat = 6 ORDER BY posts.fecha DESC LIMIT 0,18";
        $result = mysql_query($query) or die ('ERROR IN QUERY');  

        while ($fila = mysql_fetch_array($result, MYSQL_ASSOC))
        {
            $desc = $fila['html'];
            echo "<item>\n";
            echo "<title>".$fila['titulo']."</title>\n";
            echo "<link>http://example.com/peliculas-series/2/".$fila['id']."/".$fila['slug'].".html</link>\n";  
            echo "<description>
".$desc."
</description>";          
            echo "</item>\n";

        }  
    echo "</channel>";
    echo "</rss>";
?>

改用HTMLEntity()和html\u entity\u decode()

在usinh htmlentities()之后存储带有特殊字符的文本

从数据库中检索后,只需使用html\u实体\u decode()

不需要utf8员工


希望这有助于

可能的副本,请遵循。确保应用程序的所有部分都使用UTF8。除非你知道自己在做什么,否则不要使用
utf8(de|en)代码。他们的名字有误导性!您使用utf8\U编码的目的是什么?阅读deceze和ComFreek,您提供的链接无法解决我的问题。。如果该类的输出字符串包含一些问题符号…有什么想法吗?请检查并解释这些函数的作用,可能有一两个示例,以及为什么它们更好。
<?php
header('Content-Type: application/rss+xml; charset=utf-8');
echo '<?xml version="1.0" encoding="utf-8"?>';
echo "\n<rss version='2.0'>";
echo "<channel>\n";
echo "<title>Feed Juegos</title>\n";
echo "<link>http://example.com</link>\n";
echo "<description>Ultimas Entradas Xxx Javi</description>\n";

        DEFINE ('USER', 'zadmin_new'); 
        DEFINE ('PWW', 'mierda');  
        DEFINE ('HOST_BD', 'localhost');  
        DEFINE ('DBNAME', 'zadmin_warezo'); 

        $conexion = mysql_connect(HOST_BD, USER, PWW) or  
        die ('No se pudo conectar a la BD');  
        mysql_select_db(DBNAME) or die ('Error in connection');  

        $query= "SELECT * FROM posts WHERE id_cat = 6 ORDER BY posts.fecha DESC LIMIT 0,18";
        $result = mysql_query($query) or die ('ERROR IN QUERY');  

        while ($fila = mysql_fetch_array($result, MYSQL_ASSOC))
        {
            $desc = $fila['html'];
            echo "<item>\n";
            echo "<title>".$fila['titulo']."</title>\n";
            echo "<link>http://example.com/peliculas-series/2/".$fila['id']."/".$fila['slug'].".html</link>\n";  
            echo "<description>
".$desc."
</description>";          
            echo "</item>\n";

        }  
    echo "</channel>";
    echo "</rss>";
?>
$text = htmlentities("çéà"); // resulting in $text = "&ccedil;&eacute;&agrave;";
html_entity_decode($text); // resulting in çéà