2011-07-31 7 views
2

Est-il possible d'identifier un nœud DOM s'il est vide en utilisant seulement xPath?Recherche de tous les nœuds DOM vides

Par exemple, un nœud comme ceci:

<div></div> 

J'espère juste faire une length sur les nœuds du retour xPath comme ceci:

$doc = new DOMDocument(); 

$doc->loadHTML($html); 

$xpath = new DOMXPath($doc); 

$xpath_rule = "XPATH"; 

$returned_nodes = $xpath->query($xpath_rule); 

if($returned_nodes->length > 0){ // it is not empty 

Si cela ne peut pas être fait avec xPath, comment puis-je le faire efficacement en traversant l'arbre DOM entier?

Seul xPath 1.0 est supporté par PHP5.

Répondre

3

Cette expression XPath correspond à tous les éléments sans enfants ou ne contenant que des espaces:

//*[not(*) and not(normalize-space(.))] 
+0

Vous êtes génial, qui a très bien! – Abs

Questions connexes