Heim > Artikel > Backend-Entwicklung > Wie extrahiere ich inneren XML-Inhalt aus einem SimpleXMLElement ohne die Wrapping-Tags in PHP?
Beim Extrahieren des inneren HTML-Inhalts eines Elements mit der SimpleXMLElement-Klasse von PHP gibt die Methode asXML() das gesamte Element zurück, einschließlich seine Wrapping-Tags. Um nur das innere XML zu erhalten, ist eine benutzerdefinierte Funktion erforderlich.
Eine solche Funktion wird unten vorgestellt:
<code class="php">function SimpleXMLElement_innerXML($xml) { $innerXML = ''; foreach (dom_import_simplexml($xml)->childNodes as $child) { $innerXML .= $child->ownerDocument->saveXML($child); } return $innerXML; }</code>
Zum Beispiel mit dem folgenden XML:
<code class="xml"><qa> <question>Who are you?</question> <answer>Who who, <strong>who who</strong>, <em>me</em></answer> </qa></code>
So extrahieren Sie das innere XML des Antwortelements:
<code class="php">$xml = simplexml_load_string($xml_string); $answer_innerXML = SimpleXMLElement_innerXML($xml->answer);</code>
$answer_innerXML enthält die Zeichenfolge:
Who who, <strong>who who</strong>, <em>me</em>
Das obige ist der detaillierte Inhalt vonWie extrahiere ich inneren XML-Inhalt aus einem SimpleXMLElement ohne die Wrapping-Tags in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!