(PHP 8 >= 8.4.0)
DOMNode::compareDocumentPosition — Compare la position de deux nœuds
Compare la position de l'autre nœud par rapport à ce nœud.
other
Le nœud pour lequel la position doit être comparée, par rapport à ce nœud.
Un masque de bits des constantes
DOMNode::DOCUMENT_POSITION_*
.
Exemple #1 Exemple de DOMNode::compareDocumentPosition()
<?php
$xml = <<<XML
<root>
<child1/>
<child2/>
</root>
XML;
$dom = new DOMDocument();
$dom->loadXML($xml);
$root = $dom->documentElement;
$child1 = $root->firstElementChild;
$child2 = $child1->nextElementSibling;
var_dump($root->compareDocumentPosition($child1));
var_dump($child2->compareDocumentPosition($child1));
?>
L'exemple ci-dessus va afficher :
int(20) // Ceci est DOMNode::DOCUMENT_POSITION_CONTAINED_BY | DOMNode::DOCUMENT_POSITION_FOLLOWING int(2) // Ceci est DOMNode::DOCUMENT_POSITION_PRECEDING