首頁 > 後端開發 > php教程 > 如何在 PHP 中從 SimpleXMLElement 擷取內部 XML 內容?

如何在 PHP 中從 SimpleXMLElement 擷取內部 XML 內容?

DDD
發布: 2024-10-27 19:09:30
原創
737 人瀏覽過

How to Extract Inner XML Content from SimpleXMLElement in PHP?

PHP SimpleXML:存取內部XML

在使用PHP 的SimpleXML 進行XML 操作時,通常需要擷取元素的內部HTML 內容沒有封閉內部HTML的標籤。本文探討如何使用 SimpleXML 來實現此目的。

考慮以下XML 結構:

<code class="xml"><qa>
  <question>Who are you?</question>
  <answer>Who who, <strong>who who</strong>, <em>me</em></answer>
</qa></code>
登入後複製

要將「answer」元素的內部內容提取為字串,以下方法是可用:

使用asXML ():

<code class="php">$answer = new SimpleXMLElement($xml);
$innerXML = $answer->asXML(); // Returns "<answer>Who who, <strong>who who</strong>, <em>me</em></answer>"</code>
登入後複製

使用DOM 文件:

<code class="php">$answer = new SimpleXMLElement($xml);
$dom = dom_import_simplexml($answer);
$innerXML = $dom->ownerDocument->saveXML($dom); // Returns "Who who, <strong>who who</strong>, <em>me</em>"</code>
登入後複製

使用自訂函數:

使用自訂函數:
<code class="php">function SimpleXMLElement_innerXML($xml)
{
  $innerXML = '';
  foreach (dom_import_simplexml($xml)->childNodes as $child)
  {
    $innerXML .= $child->ownerDocument->saveXML($child);
  }
  return $innerXML;
}</code>
登入後複製

可以定義以下自訂函數來提取內部XML:
<code class="php">$innerXML = SimpleXMLElement_innerXML($answer); // Returns "Who who, <strong>who who</strong>, <em>me</em>"</code>
登入後複製

使用此函數:這些方法提供用於提取SimpleXML 元素內部XML 的選項,從而實現XML內容的高效率操作和檢索。

以上是如何在 PHP 中從 SimpleXMLElement 擷取內部 XML 內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板