【问题标题】:Parse XML soup in PHP在 PHP 中解析 XML 汤
【发布时间】:2013-06-20 22:17:53
【问题描述】:

我有一些类似这种格式的 XML 文件

...
<section>
  <header>Headline</header>
  <par>Some text <em>here</em> and more text.</par>
</section>
....

起初我使用 PHP 拉解析器 XMLReader,它只是遍历文件,我可以响应阅读器会遇到的任何节点类型。这一切都运行得很好,但代码感觉臃肿,我需要一些上下文信息,这需要我拖动额外的状态。例如,&lt;header&gt; 标签可以是部分或子部分标签的子标签。

所以我切换到 SimpleXML,因为它将 XML 文档表示为递归数据结构,并为我提供 XPath 功能。没有更多状态(因为我可以查询上下文,例如标题标签)并且代码更加紧凑。

但是...如何访问&lt;par&gt; 标记的"Some text " 和" and more text." 子节点?这可能吗,或者我不能用 SimpleXML 解析汤吗?我是否应该更好地使用 DOMDocument 实现,如果是,是哪一个?与 SimpleXML 的区别在哪里?

【问题讨论】:

标签: php xml-parsing


【解决方案1】:

我上面描述的问题与这个问题中的问题非常相似:Getting the text portion of a node using php Simple XML

简答:SimpleXML 无法处理文本节点,请改用 DOMDocument 实例。参考线程中的更多详细信息和解决方案。

【讨论】:

    猜你喜欢
    • 2017-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多