【问题标题】:XML, array on PHP special characters issue [duplicate]XML,PHP特殊字符问题的数组[重复]
【发布时间】:2013-10-21 03:28:46
【问题描述】:

你好,我正在从 XML 文件做一个 RSS 提要,没关系。但是特殊的拉丁字符没有正确回显,页面的其余部分正在这样做..我想我需要将数组转换为 utf8。

这适用于页面,如果我将其更改为 UTF 我得到了?而不是角色本身

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

这是我的代码(部分)

   $rss = new DOMDocument();
    $rss->loadXML( curl_load('http://www.laesquinadelamoda.com/feed/') );

    //Charset.forName("UTF-8").encode($rss);



    $feed = array();




    foreach ($rss->getElementsByTagName('item') as $node) {
        $item = array (

如何修复数组以正确显示 UTF8 字符

【问题讨论】:

  • 试试&lt;meta charset="utf-8"&gt;。此外,您应该能够使用$rss-&gt;load('http://www.laesquinadelamoda.com/feed/') 打开提要
  • 谢谢,但页面的其余部分不起作用,因为当我设置为
  • 您需要显示输出显示不正确数据的代码。您的元标记也应该在您的 &lt;head&gt; 块的顶部附近,以免其他任何错误设置编码

标签: php xml


【解决方案1】:

尝试将 HTTP 响应 Content-Type 标头设置为 UTF-8 编码,因为这是您从 SimpleXMLElement 属性输出时使用的编码:

<?php
header('Content-Type: text/html; charset=utf-8');
#################################################

$url = 'http://www.laesquinadelamoda.com/feed/';
$xml = simplexml_load_file($url);

foreach ($xml->channel->item as $item)
{        
     echo $item->title, "<br>\n";
}

输出:

¿Qué es un serum antimanchas?
Cosmética masculina en nuestras perfumerías
Prendas para renovar el armario masculino
Un poco de street style masculino
Cálzate unas zapatillas
Looks con prendas de Sfera
Looks con prendas de Springfield y Stradivarius
Viste tus gadgets con las mejores galas
Ropa interior moldeadora
Cómo elegir una barra de labios roja

【讨论】:

    猜你喜欢
    • 2011-04-22
    • 1970-01-01
    • 1970-01-01
    • 2013-04-12
    • 2013-12-16
    • 1970-01-01
    • 2015-12-31
    • 2011-02-10
    • 1970-01-01
    相关资源
    最近更新 更多