Hola, he programado este script que lee una base de datos en archivo xml, ademas los va numerando. El script me va perfecto pero tengo un problemilla de principiante. Y es que no encuentro la manera de poder seleccionar según que datos del xml con foreach.
Por ejemplo, quiero seleccionar – que muestre en pantalla – los libros cuyo año de edicion sea 2003 o cuya lengua sea castellano.
<table border="1">
<?php
$x=1;
$xml = simplexml_load_file("archivo.xml");
foreach ($xml->libros as $libros) {
echo "<tr><td> " . $x++ ."</td>";
echo "<td> " . $libros->titulo ."</td>";
echo "<td> " . $libros->autor ."</td>";
echo "<td> " . $libros->editorial ."</td>";
echo "<td> " . $libros->paginas ."</td>";
echo "<td> " . $libros->lengua ."</td>";
echo "<td> " . $libros->anoedicion ."</td>";
echo "<td> " . $libros->precio ."</td>";
}
?>
</tr>
</table>
El archivo - reducido - xml es este.
<?xml version="1.0" encoding="iso-8859-1"?>
- <libros>
<titulo>CRIATURAS ABISMALES</titulo>
<autor>NOUVIAN , CLAIRE</autor>
<editorial>LA ESFERA DE LOS LIBROS, S.L.</editorial>
<paginas>952</paginas>
<lengua>castellano</lengua>
<anoedicion>2007</anoedicion>
<precio>39€</precio>
- </libros>
- <libros>
<titulo>PARAISO IMPERFECTO</titulo>
<autor>SKYE, CHRISTINA</autor>
<editorial>EDICIONES B, S.A.</editorial>
<paginas>368</paginas>
<lengua>ingles</lengua>
<anoedicion>2003</anoedicion>
<precio>16.5€</precio>
- </libros>
Haber si me podeis ayudar, a poder ser con foreach q no cambie mucho el codigo original. Gracias foreros, espero vuestras respuestas.