首页  >  文章  >  后端开发  >  如何在 PHP 中提取 SimpleXMLElement 对象的内部 XML 内容?

如何在 PHP 中提取 SimpleXMLElement 对象的内部 XML 内容?

Susan Sarandon
Susan Sarandon原创
2024-10-28 19:28:02515浏览

How to extract the inner XML content of a SimpleXMLElement object in PHP?

在 PHP 中使用 SimpleXML 获取内部 XML 内容

在 PHP 中处理 XML 数据时,您可能会遇到需要提取的情况元素的内部内容,不包括元素标签本身。这可以借助 XPath 查询或自定义函数来实现。

自定义函数方法:

获取内部 XML 内容的一种有效方法是创建一个自定义函数迭代节点并提取所需数据的函数。

<code class="php">function SimpleXMLElement_innerXML($xml) {
  $innerXML = '';
  foreach (dom_import_simplexml($xml)->childNodes as $child) {
    $innerXML .= $child->ownerDocument->saveXML($child);
  }
  return $innerXML;
}</code>

用法:

<code class="php">$xml = '<qa>
  <question>Who are you?</question>
  <answer>Who who, <strong>who who</strong>, <em>me</em></answer>
</qa>';

$answer = simplexml_load_string($xml);
$inner_content = SimpleXMLElement_innerXML($answer);

echo $inner_content; // Output: "Who who, <strong>who who</strong>, <em>me</em>"</code>

结论:

这个自定义函数提供了一种简单有效的方法来检索 SimpleXMLElement 对象的内部 XML 内容,而无需诉诸复杂的字符串操作技术。它在处理大型或复杂的 XML 结构时特别有用。

以上是如何在 PHP 中提取 SimpleXMLElement 对象的内部 XML 内容?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn