【发布时间】: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出错,
ds是namespace-prefix,而且你的sn-p中没有定义,见xmlvalidation.com这可能是你无法访问的原因。跨度>
标签: php xml xml-parsing simplexml xml-namespaces