Disculpa por no responder rápido pero realmente no tenía tiempo...
Si entre mensaje tienes titulo y genero, podrías hacer algo así:
Código PHP:
Ver original<?php
$library = new SimpleXMLElement('test.xml', null, true);
$ti = $library->xpath('(//mensaje[genero="Rock"]/titulo)[position() <= 20]');
foreach ($ti as $t) {
echo $t . '<br />';
}
Mostraría los títulos de los primeros 20 mensajes del genero Rock.
Ahora si lo que quieres es un condicional que te muestre del 20 al 40, puedes hacer algo así:
Código PHP:
Ver original<?php
$library = new SimpleXMLElement('test.xml', null, true);
$ti = $library->xpath('(//mensaje[genero="Rock"]/titulo)[(position() >= 20) and (position() <= 40)]');
foreach ($ti as $t) {
echo $t . '<br />';
}
Espero que te sirva, saludos.