나는 올바른 방향으로 나를 가리킬 수 있기를 바랍니다. 나는 기본적으로 약 10-15 개의 XML 피드를 가져올 PHP 애플리케이션을 작성 중이며 각기 다른 형식의 약 30 개의 노드를 사용하고 다양한 카테고리로 클러스터링한다. 지금까지 나는 각 피드를 XSLT를 통해 표준화 된 형식 (XML 요소가 모든 출력 필드에서 표준화되어 있음)으로 변환/매핑하는 PHP 부분을 작성할 수있었습니다. 나는 간단한 include를 할 수 있고 그것들을 모두 하나의 피드를 출력하기 위해 포함시킬 수있다. 문제는 feed가 현재 노드 당 17 개의 요소가있는 약 400-500 개의 노드이며 영원히로드에 걸리는 문제라는 것이다. 그게 내가 붙어있어 XMLReader/XMLWriter 명령을 시도했지만 XML Writer에서 오류가 발생했습니다. 나는 아래의 코드XML을 사용한 XML 병합 최적화
$xml1 = new XMLReader();
$xml1->open('convert1.php');
$xml2 = new XMLReader();
$xml2->open('convert2.php');
$name = 'xmlroot';
$write = new XMLWriter();
$write->startElement($name);
을 사용하고이다 오류가 나는 얻을 :
<xmlroot>
<xmlnode>
<xmlelement></xmlelement>
</xmlnode>
</xmlroot>
변환 PHP 코드 :
<?php
$xml = new DOMDocument();
$xml->load('xmlfeed');
$xsl = new DOMDocument;
$xsl->load('xsl.xsl');
$proc = new XSLTProcessor();
$proc->importStyleSheet($xsl);
echo $proc->transformToXML($xml);
Warning: XMLWriter::startElement() [xmlwriter.startelement]: Invalid or unitialized XMLWriter object in C:\wamp\www\mergetest\merge1.php on line 22
내 XML은 다음과 같이 구성되어있다
저는 아직 PHP가 처음이에요. 다시 멍청한 실수 또는 내가 뭔가를 포함하지 않았어, 제발 불꽃을하지 말아요 난 단지 배우려고 노력하고 있으며, 모든 도움을 주시면 감사하겠습니다. 나는 PHP 레퍼런스/튜토리얼을 보았지만 도움이되지 않는다.