DOMXPath::query
En esta página
DOMXPath::query
Evalúa la expresión XPath dada
Descripción#
public DOMXPath::query(string $expression, [DOMNode $contextNode], [bool $registerNodeNS]): mixed
```php
Evalúa la expresión `expression` XPath dada.
## Parámetros
`expression`
La expresión XPath a ejecutar.
`contextNode`
El argumento opcional `contextNode` puede ser especificado para realizar consultas XPath relativas. Por omisión, las consultas son relativas al elemento raíz.
`registerNodeNS`
Indica si se deben registrar automáticamente los prefijos de espacio de nombres en vigor del nodo de contexto en el objeto `DOMXPath`. Esto puede ser utilizado para evitar tener que llamar manualmente a DOMXPath::registerNamespace para cada espacio de nombres en vigor. En caso de conflicto de prefijos de espacio de nombres, solo se registra el prefijo de espacio de nombres descendiente más cercano.
## Valores devueltos
Devuelve un `DOMNodeList` que contiene todos los nodos que coinciden con la expresión `expression` XPath dada. Todas las expresiones que no devuelvan ningún nodo devolverán un `DOMNodeList` vacío.
Si el argumento `expression` está malformado o el argumento `contextNode` es inválido, DOMXPath::query devolverá `false`.
## Errores/Excepciones
Los siguientes errores pueden ocurrir al utilizar una expresión que invoca retrollamadas PHP.
- Lanza una Error si una retrollamada PHP es invocada pero ninguna retrollamada está registrada, o si la retrollamada nombrada no está registrada.
- Lanza una TypeError si la sintaxis `php:function` es utilizada y el nombre del gestor no es un string.
- Lanza una Error si un objeto no-DOM es devuelto por una retrollamada.
## Ejemplos
Recuperación de todos los libros en inglés
El ejemplo anterior mostrará:
Libro encontrado : The Grapes of Wrath, por John Steinbeck
Libro encontrado : The Pearl, por John Steinbeck
También podemos utilizar el argumento `contextNode` para acortar nuestra expresión :
```php
Véase también#
DOMXPath::query