DOMXPath::query

creationdev

Documentation

Conception web standard
Conception web standard

2500$ CAD

Référencement web organique
Référencement web organique

300$ CAD

Conception d'application web
Conception d'application web

100$ CAD

Référencement web optimisé
Référencement web optimisé

500$ CAD

Conception web microsite
Conception web microsite

1000$ CAD

Formation référencement web
Formation référencement web

100$ CAD

Conception web ecommerce
Conception web ecommerce

2500$ CAD

Conception web extra
Conception web extra

5000$ CAD

Référencement web stratégique
Référencement web stratégique

1000$ CAD

Référencement web expert
Référencement web expert

750$ CAD

Méthode

Méthode

DOMXPath::query

DOMXPath::query

Page Vue 26 déc. 2018
Page Vue 13 fois

(PHP 5, PHP 7, PHP 8)

DOMXPath::query — Évalue l'expression XPath donnée

Description

public DOMXPath::query(string $expression, ?DOMNode $contextNode = null, bool $registerNodeNS = true): mixed

Évalue l'expression expression XPath donnée.

Liste de paramètres

expression

L'expression XPath à exécuter.

contextNode

Le paramètre optionnel contextNode peut être spécifié pour effectuer des requêtes XPath relative. Par défaut, les requêtes sont relatives à l'élément racine.

registerNodeNS

Le paramètre optionnel registerNodeNS peut être renseigné pour désactiver l'enregistrement automatique du nœud de contexte.

Valeurs de retour

Retourne un DOMNodeList contenant tous les nœuds correspondant à l'expression expression XPath donnée. Toutes les expressions qui ne retournent pas de nœud retourneront un DOMNodeList vide.

Si le paramètre expression est malformé ou le paramètre contextNode est invalide, DOMXPath::query() retournera false.

Exemples

Exemple #1 Récupération de tous les livres anglais

<?php

$doc = new DOMDocument;

// Nous ne voulons pas nous soucier des espaces blancs
$doc->preserveWhiteSpace = false;

$doc->load('book.xml');

$xpath = new DOMXPath($doc);

// Nous commençons à l'élément racine
$query = '//book/chapter/para/informaltable/tgroup/tbody/row/entry[. = "en"]';

$entries = $xpath->query($query);

foreach ($entries as $entry) {
echo "Livre trouvé {$entry->previousSibling->previousSibling->nodeValue}," .
" par {$entry->previousSibling->nodeValue}\n";
}
?>

L'exemple ci-dessus va afficher :

Livre trouvé : The Grapes of Wrath, par John Steinbeck
Livre trouvé : The Pearl, par John Steinbeck

Nous pouvons également utiliser le paramètre contextNode pour raccourcir notre expression :

<?php

$doc = new DOMDocument;
$doc->preserveWhiteSpace = false;

$doc->load('book.xml');

$xpath = new DOMXPath($doc);

$tbody = $doc->getElementsByTagName('tbody')->item(0);

// notre requête est relative au nœud tbody
$query = 'row/entry[. = "en"]';

$entries = $xpath->query($query, $tbody);

foreach ($entries as $entry) {
echo "Livre trouvé : {$entry->previousSibling->previousSibling->nodeValue}," .
" par {$entry->previousSibling->nodeValue}\n";
}
?>

Voir aussi


Source : http://www.php.net/
Ref : methode-domxpath::query.php




Contact

Contact

Veuillez saisir les infos dans le formulaire d'identification
suivant pour concevoir et référencer votre site.









Veuillez saisir votre message.

Carte d'affaires

Affichage de la carte d'affaires recto/verso.

Carte d'affaires recto
Carte d'affaires verso

Partagez

Partagez

Discussion ayant comme sujet la page DOMXPath::query.

©2025 creationdev -  F.A.Q. -  Soutien -  Haut de page
THÈMES: