(PHP 5 >= 5.1.0, PHP 7)
DOMXPath::evaluate — Évalue une expression XPath donnée et retourne un résultat typé si possible
$expression
[, DOMNode $contextnode
[, bool $registerNodeNS
= true
]] )
Exécute l'expression XPath expression
et retourne un résultat typé si possible.
expression
L'expression XPath à exécuter.
contextnode
Le paramètre optionnel contextnode
peut être
spécifié pour effectuer des requêtes XPath relatives. Par défaut, les requêtes
sont relatives à l'élément root.
registerNodeNS
Le paramètre optionnel registerNodeNS
peut être
renseigné pour désactiver l'enregistrement automatique du noeud de
contexte.
Retourne un résultat typé si possible ou un DOMNodeList
contenant tous les noeuds correspondant à l'expression XPath
expression
.
Si le paramètre expression
est mal formé
ou bien si le paramètre contextnode
est invalide,
la méthode DOMXPath::evaluate() retournera FALSE
.
Version | Description |
---|---|
5.3.3 |
Ajout du paramètre registerNodeNS .
|
Exemple #1 Récupération du nombre total de livres anglais
<?php
$doc = new DOMDocument;
$doc->load('book.xml');
$xpath = new DOMXPath($doc);
$tbody = $doc->getElementsByTagName('tbody')->item(0);
// notre requête est relative au noeud tbody
$query = 'count(row/entry[. = "en"])';
$entries = $xpath->evaluate($query, $tbody);
echo "Il y a $entries livres anglais\n";
?>
L'exemple ci-dessus va afficher :
Il y a 2 livres anglais