2013-05-16 3 views
-1

PHP에서 ds:X509Certificate의 노드 값을 얻으려고합니다. IDPSSODescriptor 태그, 하위 노드 값에 액세스하는 방법에 대한 모든 포인터까지 탐색 할 수 있습니다. 지금까지 작업php-reading xml 자식 노드 값

<EntityDescriptor> 
     <IDPSSODescriptor> 
     <ds:Signature > 
      <ds:SignedInfo>..</ds:SignedInfo> 
      <ds:SignatureValue>..</ds:SignatureValue> 
       <ds:KeyInfo> 
       <ds:X509Data> 
        <ds:X509Certificate/> 
       </ds:X509Data> 
       </ds:KeyInfo> 
     <test> 
     <test2> 
     </IDPSSODescriptor> 
</EntityDescriptor> 

PHP 코드, 내가 노력

$data = $idp_xml->IDPSSODescriptor->attributes()->ID; 

,

$xml = new SimpleXMLElement($idp_xml->IDPSSODescriptor); 
$data = (string) $xml->ds:Signature[0]->ds:KeyInfo->ds:X509Data->ds:X509Certificate. 
+0

안녕 단지 것 같았다하지 않는 요청하지만, XML 파일을 읽어 잘 형성하면 XML에 대한 자세한 내용을 제공 할 수 있습니다. 파일 –

+0

XML에서'ds'는'namespace-prefix'이며, 스 니펫에 정의되어 있지 않습니다. http://www.xmlvalidation.com을 참조하십시오. 이것이 아마도 당신이 접근 할 수없는 이유 일 것입니다. – michi

답변