【问题标题】:php-reading xml child node value [duplicate]php-reading xml子节点值[重复]
【发布时间】:2023-03-15 15:33:01
【问题描述】:

试图在 PHP 中获取 ds:X509Certificate 的节点值。我能够导航到IDPSSODescriptor 标记,任何关于如何访问子节点值的指针。

<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.

【问题讨论】:

  • 您好,刚刚阅读了您的请求,但 xml 文件的格式似乎不是很好,您能否提供有关您的 xml 文件的更多详细信息
  • 你的XML出错,dsnamespace-prefix,而且你的sn-p中没有定义,见xmlvalidation.com这可能是你无法访问的原因。跨度>

标签: php xml xml-parsing simplexml xml-namespaces


【解决方案1】:

http://www.php.net/manual/en/simplexmlelement.children.php

$childNode = $idp_xml->IDPSSODescriptor->children();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-19
    • 2015-10-05
    • 2014-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-26
    相关资源
    最近更新 更多