2014-06-19 2 views
1

을 반환 나는 다음과 같은 XML이 :SaveXml은 빈 문자열

<assumption_list> 
    <assumption name="test" id="23" description="test1" is_shared="no"> 
     <watchlists> 
      <watchlist globalissuer="koolwater" prepayrate="5" prepaytype="CPR" defaultrate="5" defaulttype="CDR" lossrate="7" lagmonths="2"/> 
     </watchlists> 
    </assumption> 
</assumption_list> 

내가있는 DOMDocument로 PHP에서 JSP로 호출하여받은 다음로드를

내가 문자열로 얻을 <watchlists> 노드를 시도하고

다음 코드를 사용하여 :

$result = $xmlDoc->getElementsByTagName('watchlists'); 
$strxml=''; 
foreach($result as $element) 
{ 
    print_r(simplexml_import_dom($element)); 
    $strxml = $xmlDoc->saveXML($element); 
    var_dump($strxml); 
} 

을 나는 볼 수 있습니까 내 print_r(simplexml_import_dom($element));이 채워하지만 점점 내가 saveXml 오페라 후 빈 문자열을 참조 몇 가지 이유 . 현재 구현에 문제가 있습니까?

난 당신이 XML 문자열 표현 출력을 원한다면, 당신은이에 대한 간단한 htmlentities()를 사용할 수있는 PHP 응용 프로그램

+0

요소를 반향 시키거나 파일에 저장하려고합니까? – beingalex

+0

기본적으로 문자열의 watchlists 노드를 잡으려고하므로 PHP에서 C# dll로 전달할 수 있습니다. – user3290807

+0

실제 XML 출력을 볼 수있는 뷰 소스를 가지고 있다는 것을 깨달았습니다. – user3290807

답변

0

에서 사용하는 C#을 DLL의 XML 문자열을 전달 할 수 있도록 XML 문자열 표현을 얻기 위해 노력하고 있어요 하나. 다음 예제를 고려하십시오. Sample Output

$xmlDoc = '<assumption_list> <assumption name="test" id="23" description="test1" is_shared="no"> <watchlists> <watchlist globalissuer="koolwater" prepayrate="5" prepaytype="CPR" defaultrate="5" defaulttype="CDR" lossrate="7" lagmonths="2"/> </watchlists> </assumption></assumption_list>'; 
$xmlDoc = simplexml_load_string($xmlDoc); 
$result = $xmlDoc->assumption->watchlists->watchlist; 
// echo $result->asXML(); // output as xml 
echo htmlentities($result->asXML()); // output as xml string