Aquí está el código XML estoy trabajando con:consulta XPath con PHP
<inventory>
<drink>
<lemonade supplier="mother" id="1">
<price>$2.50</price>
<amount>20</amount>
</lemonade>
<lemonade supplier="mike" id="4">
<price>$3.00</price>
<amount>20</amount>
</lemonade>
<pop supplier="store" id="2">
<price>$1.50</price>
<amount>10</amount>
</pop>
</drink>
</inventory>
Entonces escribí un código simple para practicar el trabajo con XPath:
<?php
$xmldoc = new DOMDocument();
$xmldoc->load('sample.xml');
$xpathvar = new Domxpath($xmldoc);
$queryResult = $xpathvar->query('//lemonade/price');
foreach($queryResult as $result) {
echo $result->textContent;
}
?>
Ese código está funcionando bien, la salida todos los valores del precio de la limonada como se esperaba Ahora cuando cambio la cadena de consulta para seleccionar sólo los elementos con un atributo se establece en un valor determinado, como
// limonada [proveedor = "madre"]/precio
o
// limonada [id = "1"]/precio
no va a funcionar, no hay salida en absoluto. ¿Qué estoy haciendo mal?