PHP SimpleXML 获取 innerXML

标签 php simplexml innerxml

我需要在这段 XML 中获取 answer 的 HTML 内容:

<qa>
 <question>Who are you?</question>
 <answer>Who who, <strong>who who</strong>, <em>me</em></answer>
</qa>

所以我想得到字符串“Who who, who who, me”。

如果我将 answer 作为 SimpleXMLElement,我可以调用 asXML() 来获取“Who who, who who, me”,但是如何获取元素的内部 XML 而没有元素本身包裹它?

我更喜欢不涉及字符串函数的方法,但如果这是唯一的方法,那就这样吧。

最佳答案

function SimpleXMLElement_innerXML($xml)
  {
    $innerXML= '';
    foreach (dom_import_simplexml($xml)->childNodes as $child)
    {
        $innerXML .= $child->ownerDocument->saveXML( $child );
    }
    return $innerXML;
  };

关于PHP SimpleXML 获取 innerXML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1937056/

相关文章:

php - 从 XMLReader 打开的 simplexml 中的 CData

php - SimpleXML 中用于默认 namespace 的 XPath,无需前缀

XmlNode InnerXml 与 OuterXml

javascript - jQuery .load 刷新导致页面缩小

php - MYSQL,1 :n relation into single row with restriction

php - SimpleXML 子属性在有和没有命名空间时表现不同

.net - 获取 XElement 的 InnerXml 的最佳方法?

php - angular.js View 返回空白页

php - 谷歌云端硬盘 API v3 : Invalid field selection