PHP DOmDocument, XML и CSS - не может заставить его работать - PullRequest
0 голосов
/ 18 июня 2010

Я генерирую поток XML с DomDocument.Мне нужен чистый поток XML, поэтому я не хочу менять исходный код с помощью преобразования xsl.Тем не менее, я хочу, чтобы люди могли «читать» XML в своем браузере без щелчка правой кнопкой мыши -> View Source.

Итак, я делаю 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.Что я делаю не так?

Спасибо

Мэнни

1 Ответ

0 голосов
/ 18 июня 2010

Хорошо, для тех, у кого такая же проблема, я наконец-то нашел решение:

При потоковой передаче XML-потока из php убедитесь, что у вас есть не только правильный XML-файл, но и отправка HTTPResponse-Headerкак:

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

Тогда это работает.

Greetz

...