【问题标题】:How parse XML to get one tag and save another tag inside如何解析 XML 以获取一个标签并在其中保存另一个标签
【发布时间】:2011-08-22 15:16:52
【问题描述】:

我使用DOM PHP5.3 的扩展来解析一些带有

标签的 xml 文档,如下所示: <p><strong><title>一些文字<word>关键字</word>一些文字

我想从标签

中获取结果,其中包含某些标签(我想知道关键字,这就是为什么我想在标签 <title> 中保存标签 <word>)。这种情况下的结果必须是这样的: <p><strong>一些文字[word]关键字[/word]一些文字</strong></p> <p>我做了一些代码:</p> <p><code>$title=$doc-&gt;getElementsByTagName('title')-&gt;item(0)-&gt;nodeValue;</code></p> <p>$title 必须包含一些结果。但是我只得到没有任何标签的文本,我现在不知道关键字在哪里。</p> <p><strong>一些文字关键字一些文字</strong></p> <p>我不知道如何保存标签<word>! 我怎样才能从 DOM 扩展中获得像 <strong>some text [word]keyword[/word] some text</strong> 这样的结果?</word></p> <p>感谢您的帮助。</p> </word>

【问题讨论】:

  • 您是否正在通过浏览器查看$title?请记住,您的浏览器会尝试呈现标签并跳过未知标签。尝试使用echo htmlentities($title) 强制按原样显示标签。

标签: php xml dom


【解决方案1】:

如果您想要所有内容 + 标签本身,总有saveXML:

http://us3.php.net/manual/en/domdocument.savexml.php

你传递你想要的节点,它会给你一个字符串,尽管&lt;title&gt; 开始和结束标记将被包括在内。它还将包括属性。

【讨论】:

  • $parse_xml->saveXML($doc->getElementsByTagName('title')->item(0));
猜你喜欢
  • 2019-06-28
  • 1970-01-01
  • 1970-01-01
  • 2021-11-02
  • 1970-01-01
  • 2012-07-22
  • 2016-09-20
  • 1970-01-01
  • 2017-09-24
相关资源
最近更新 更多