2013-06-12 2 views
0

다음 PHP 코드가 있습니다. XSL 변환 잘 작동하고 문자열 잘 서버에 에코 있지만 저장하려고하면 "치명적인 오류 : 정의되지 않은 메서드 stdClass :: save()"호출 PHP 5.3 사용 간단한 문제?PHP로 XSL 출력을 XML로 저장

<?php 


$xml = new DOMDocument; 
$xml->load('myxml.xml'); 

$xsl = new DOMDocument; 
$xsl->load('myxsl.xsl'); 

$proc = new XSLTProcessor(); 
$proc->importStylesheet($xsl); 
$newXml = $proc->transformToXML($xml); 
$newXML->formatOutput=true; 
echo $newXml; 

$newXML->save("newfile.xml")or die("Error"); 
?> 

답변

1

transformToXML()문자열을 반환합니다. 당신은 물론 파일에서 해당 문자열을 저장하는 데 file_put_contents()을 사용할 수 있습니다, 당신은 그러나 함께 직접 작업을 수행 할 수 있습니다

$proc->transformToURI($xml,'file://'.getcwd().'/newfile.xml'); 

.. 나 다른 디렉토리를 다음 현재 작업 디렉토리 (= getcwd()).

당신은 몇 가지 속성을 설정하려면

는/저장하기 전에 몇 가지 땜질을 할, 당신은 할 수 있습니다에 :

$newDOM = $proc->transformToDoc($xml); 
$newDOM->formatOutput = true; 
$newDOM->save("newfile.xml") 
+0

완벽한, 감사합니다! – Casey