Lors de l'extraction du contenu HTML interne d'un élément à l'aide de la classe SimpleXMLElement de PHP, la méthode asXML() renvoie l'élément entier, y compris ses balises d'emballage. Pour obtenir uniquement le XML interne, une fonction personnalisée est requise.
Une de ces fonctions est présentée ci-dessous :
<code class="php">function SimpleXMLElement_innerXML($xml) { $innerXML = ''; foreach (dom_import_simplexml($xml)->childNodes as $child) { $innerXML .= $child->ownerDocument->saveXML($child); } return $innerXML; }</code>
Par exemple, étant donné le XML suivant :
<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 XML interne de l'élément de réponse :
<code class="php">$xml = simplexml_load_string($xml_string); $answer_innerXML = SimpleXMLElement_innerXML($xml->answer);</code>
$answer_innerXML contiendra la chaîne :
Who who, <strong>who who</strong>, <em>me</em>
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!