Hallo,
DOM würde doch wieder zum gleichen führen?
hier hätte ich wieder eine foreach ?
Jein.
getElementsByTagName() liefert eine Node-list und den kannst du zu einem Array machen, uas dem du dann natürlich per index leicht die entsprechende Einträge holen kannst.
siehe:
DOMNodeList
und [link:http://www.php.net/manual/en/domnodelist.item.php@title=DOMNodelist::item]
Aber DOMXPath ist auch nicht so kompliziert:
[code lang=php]
<?php
$doc = new DOMDocument();
// *****
$doc->preserveWhiteSpace = false;
$doc->load( 'books.xml' );
// *****
$xpath = new DOMXPath($doc);
$query = '//books/book[(position() > $VON) and (position() <= $BIS)]';
$books= $xpath->query($query);
foreach ($books as $book) {
// was auch immer hier z.B.
echo $book->firstChild->nodeValue;
}
?>
$VON und $BIS kannst du ggf. ja dann per URL-Parameter setzen.
($VON darf aber nicht 0 sein, da es in XPath keine "position() = 0" gibt.
http://www.php.net/manual/en/domxpath.query.php
Grüße
Thomas
PS: ich bin kein PHP-Experte, also nimm den Code bitte als zu verfeinernde Idee.