Я пытаюсь объединить несколько небольших файлов XML в один большой XML.
Я провел некоторый поиск и пытаюсь использовать PHP / XML / XSL, но, похоже, не могу понять, как это правильно.
Я использую:
<?php
// Load the XML source
$xml = new DOMDocument;
$xml->load('collection.xml');
$xsl = new DOMDocument;
$xsl->load('vp.xsl');
// Configure the transformer
$proc = new XSLTProcessor;
$proc->importStyleSheet($xsl); // attach the xsl rules
echo $proc->transformToXML($xml);
?>
А вот файл XSL, который я использую:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:param name="pdoc1Url" select="'http://www.domainname.com/pages/google-feed?page=1.xml'"/>
<xsl:param name="pdoc2Url" select="'http://www.domainname.com/pages/google-feed?page=2.xml'"/>
<xsl:param name="pdoc3Url" select="'http://www.domainname.com/pages/google-feed?page=3.xml'"/>
<xsl:template match="/">
<documents>
<xsl:copy-of select="document($pdoc1Url)"/>
<xsl:copy-of select="document($pdoc2Url)"/>
<xsl:copy-of select="document($pdoc3Url)"/>
</documents>
</xsl:template>
</xsl:stylesheet>
Однако когда я запускаю скрипт, ничего не объединяется? Я знаю, что делаю что-то не так, но не могу понять, что именно. Я думаю, что я неправильно использую PHP XSLT Processor.
Как лучше всего объединить XML-документы из нескольких URL-адресов в 1 xml? Все они имеют одинаковое форматирование. В идеале я хотел бы иметь возможность просматривать комбинированный XML с URL.
Данные, которые я пытаюсь объединить, похожи на эти два URL, например:
http://www.domainname.com/pages/google-feed?page=1.xml
http://www.domainname.com/pages/google-feed?page=2.xml