使用 PHP 选择 XML 中同名的节点 - 困惑

发布于 2024-12-02 19:24:55 字数 473 浏览 0 评论 0原文

我有以下 xml

<md f="a">
<![CDATA[ MR Adam Smith ]]>
</md>
<md f="b">
<![CDATA[ Smith, Adam ]]>
</md>

并且我不确定如何使用 PHP 使用 simplexml 来回显不同的 md 节点? 所以我当前的下面的代码只能带来 md 节点的第一个值 - 但如何获取 md 的其他值?我查看了命名空间 - 但这些似乎不同。

$xml = simplexml_load_file($feedURL);
foreach($xml->results->result as $usern)
{
    echo $usern->score . '<br>';
    echo $usern->md. '<br>';
}

I have the following xml

<md f="a">
<![CDATA[ MR Adam Smith ]]>
</md>
<md f="b">
<![CDATA[ Smith, Adam ]]>
</md>

And I'm not sure how using PHP to echo the different md nodes using simplexml?
So my current code below can only bring the first value of md node - but how do I get the other values of md? I looked at namespace- but these seems different.

$xml = simplexml_load_file($feedURL);
foreach($xml->results->result as $usern)
{
    echo $usern->score . '<br>';
    echo $usern->md. '<br>';
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

白色秋天 2024-12-09 19:24:55

我以前遇到过这个问题。您需要更改创建 SimpleXML 对象的方式:

$xml = simplexml_load_file($feedURL, 'SimpleXMLElement', LIBXML_NOCDATA);

LIBXML_NOCDATA 将确保您可以从 CDATA 文本中获取值。

评论中提到了这一点(mario's特别是)的 simplexml_load_file()< /a>文档。

I've run into this problem before. You need to change how you create the SimpleXML object:

$xml = simplexml_load_file($feedURL, 'SimpleXMLElement', LIBXML_NOCDATA);

LIBXML_NOCDATA will ensure you can grab the values from CDATA text.

This is mentioned in the comments (mario's in particular) of the simplexml_load_file() documentation.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文