Heim >Backend-Entwicklung >PHP-Tutorial >Wie extrahiere ich inneren XML-Inhalt aus einem SimpleXMLElement in PHP?
PHP SimpleXML: Zugriff auf inneres XML
Im Bereich der PHP-XML-Analyse ermöglicht die SimpleXML-Erweiterung Entwicklern die einfache Bearbeitung von XML-Dokumenten. Das Extrahieren des inneren Inhalts eines XML-Elements, mit Ausnahme der umgebenden Element-Tags, kann jedoch eine Herausforderung sein.
Bedenken Sie das folgende XML-Snippet:
<qa> <question>Who are you?</question> <answer>Who who, <strong>who who</strong>, <em>me</em></answer> </qa>
Um nur den Inhalt des „ Antwort“-Element (d. h. „Wer wer, wer wer, ich“), müssen wir die Standardmethode asXML() umgehen. Stattdessen führen wir eine elegante Lösung mit der Funktion dom_import_simplexml() ein.
<code class="php">function SimpleXMLElement_innerXML($xml) { $innerXML = ''; foreach (dom_import_simplexml($xml)->childNodes as $child) { $innerXML .= $child->ownerDocument->saveXML( $child ); } return $innerXML; }</code>
Durch den Einsatz dieser Funktion können wir auf das innere XML jedes Elements zugreifen:
<code class="php">$xml = simplexml_load_string($xmlString); $innerAnswer = SimpleXMLElement_innerXML($xml->answer);</code>
Das resultierende $ Die Variable innerAnswer enthält die gewünschte Zeichenfolge: „Who who, who who, me“. Dieser Ansatz bewahrt die ursprüngliche Formatierung und die Zeicheneinheiten im inneren XML und ist somit ideal für die Wahrung der Integrität des extrahierten Inhalts.
Das obige ist der detaillierte Inhalt vonWie extrahiere ich inneren XML-Inhalt aus einem SimpleXMLElement in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!