无法使用 PHP 读取某一特定 XML 节点

发布于 2024-12-09 13:24:30 字数 683 浏览 0 评论 0原文

我正在使用 PHP 解析 XML 文件,并且能够成功地从文件中提取数据(一个特定节点除外)。有一个标有“ImageData”的开放式标签,后跟一个文本块。文本块没有被拾取,我不明白为什么它忽略“ImageData”标签后面的文本。

这是相关的 XML 代码:

<Part>
<Figure>
<ImageData src="images/interbank_img_0.jpg"/>
The text I want is here
</Figure>

这是 PHP 脚本:

$xml = simplexml_load_file("rates/interbank.xml");
$test = $xml->Part[0]->Figure[0];

这是输出 $test 时的结果:

object(SimpleXMLElement)#3 (1) {
  ["ImageData"]=>
  object(SimpleXMLElement)#2 (1) {
    ["@attributes"]=>
    array(1) {
      ["src"]=>
      string(26) "images/interbank_img_0.jpg"
    }
  }
}

I'm using PHP to parse an XML file, and am successfully able to pull data from the file, with the exception of one particular node. There is an open ended tag labeled "ImageData" followed by a block of text. The block of text is not getting picked up, and I can't figure out why its ignoring the text that follows the "ImageData" tag.

Here's the relevant XML code:

<Part>
<Figure>
<ImageData src="images/interbank_img_0.jpg"/>
The text I want is here
</Figure>

This is the PHP script:

$xml = simplexml_load_file("rates/interbank.xml");
$test = $xml->Part[0]->Figure[0];

Here's the result when outputting $test:

object(SimpleXMLElement)#3 (1) {
  ["ImageData"]=>
  object(SimpleXMLElement)#2 (1) {
    ["@attributes"]=>
    array(1) {
      ["src"]=>
      string(26) "images/interbank_img_0.jpg"
    }
  }
}

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

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

发布评论

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

评论(1

荒芜了季节 2024-12-16 13:24:30

只需将节点转换为字符串

<?php
//$xml = simplexml_load_file("rates/interbank.xml");
$xml = new SimpleXMLElement('<foo><Part>
<Figure>
<ImageData src="images/interbank_img_0.jpg"/>
The text I want is here
</Figure></Part></foo>');

echo $xml->Part[0]->Figure[0]; // echo casts the "parameters" to string before printing

打印即可

The text I want is here

Just convert the node to string

<?php
//$xml = simplexml_load_file("rates/interbank.xml");
$xml = new SimpleXMLElement('<foo><Part>
<Figure>
<ImageData src="images/interbank_img_0.jpg"/>
The text I want is here
</Figure></Part></foo>');

echo $xml->Part[0]->Figure[0]; // echo casts the "parameters" to string before printing

prints

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