Maison >développement back-end >tutoriel php >Comment extraire le contenu XML interne de SimpleXMLElement en PHP ?
PHP SimpleXML : Accéder au XML interne
Dans la manipulation XML avec SimpleXML de PHP, il est souvent nécessaire de récupérer le contenu HTML interne d'un élément sans la balise qui l'entoure. Cet article explique comment y parvenir à l'aide de SimpleXML.
Considérez la structure XML suivante :
<code class="xml"><qa> <question>Who are you?</question> <answer>Who who, <strong>who who</strong>, <em>me</em></answer> </qa></code>
Pour extraire le contenu interne de l'élément « réponse » sous forme de chaîne, les méthodes suivantes sont disponible :
Utilisation de asXML() :
<code class="php">$answer = new SimpleXMLElement($xml); $innerXML = $answer->asXML(); // Returns "<answer>Who who, <strong>who who</strong>, <em>me</em></answer>"</code>
Utilisation de DOMDocument :
<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>
Utilisation une fonction personnalisée :
La fonction personnalisée suivante peut être définie pour extraire le XML interne :
<code class="php">function SimpleXMLElement_innerXML($xml) { $innerXML = ''; foreach (dom_import_simplexml($xml)->childNodes as $child) { $innerXML .= $child->ownerDocument->saveXML($child); } return $innerXML; }</code>
À l'aide de cette fonction :
<code class="php">$innerXML = SimpleXMLElement_innerXML($answer); // Returns "Who who, <strong>who who</strong>, <em>me</em>"</code>
Ces méthodes fournissent options pour extraire le XML interne des éléments SimpleXML, permettant une manipulation et une récupération efficaces du contenu XML.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!