【问题标题】:PHP DOmDocument , XML and CSS - can't get it to workPHP DOmDocument 、 XML 和 CSS - 无法正常工作
【发布时间】:2010-06-18 08:53:54
【问题描述】:

我正在使用 DomDocument 生成 XML 流。我需要纯 XML 流,所以我不想使用 xsl 转换更改源代码。尽管如此,我希望人们能够在浏览器中“读取”XML 而无需右键单击->查看源代码。

所以我要做的是创建一个 DomDocument 并添加一个处理指令:

$css = $xml->createProcessingInstruction("xml-stylesheet", "type=\"text/css\" href=\"xml.css\"");
$xml->appendChild($css);

然后我添加我所有的项目。生成的 XML 如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="xml.css"?>
<OBJECT>
  <OBJECTNAME>Mi Casa</OBJECTNAME>
  <OBJECTID>1</OBJECTID>
  <DATES>
    <DATE>
      <ID>5</ID>
      <STAYFROM>05.08.2010</STAYFROM>
      <STAYTO>15.08.2010</STAYTO>
    </DATE>
  </DATES>
</OBJECT>

这里是原始xml的链接:

http://www.todasmisreservas.com/service/rss.php?obj=1type=res&status=confirmed&xsl=1

这是我的 CSS:

OBJECT {
background-color: #555555;
width: 100%;
}

OBJECTNAME {
display: block;
margin-bottom: 30pt;
margin-left: 0;
}

OBJECTID {
color: #FF0000;
font-size: 20pt;
}

DATES {
color: #0000FF;
font-size: 20pt;
}

STAYFROM, STAYTO, ID {
display: block;
color: #aa0000;
margin-left: 20pt;
}

我无法让它工作,因为 cssfile 会以任何方式影响 xml。我做错了什么?

谢谢

梅尼

【问题讨论】:

  • 您是以 text/html 还是 text/xml 格式发送 XML?
  • 它的 echo $xml->saveXML(); ,所以我猜它的文本/xml。

标签: php css xml domdocument


【解决方案1】:

好的,有同样问题的人,我终于找到了解决方案:

当从 php 流式传输 XML 流时,请确保不仅要有一个有效的 xml 文件,还要发送一个 HTTPResponse-Header,如:

header("content-type: text/xml; charset=utf-8");

然后就可以了。

问候

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-17
    • 1970-01-01
    • 2012-08-02
    • 2013-11-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多