Código PHP:
$dir = "data";
$dh = opendir($dir);
while ($nombre_archivo = readdir($dh)) {
list($num,$ext) = explode(".",$nombrearchivo); //separa el nombre de la extension
if($ext=="txt") { //Solo cuenta los archivos con extension txt
$archivos[$num] = $nombre_archivo;
}
}
paginas = array();
while(!count($archivos)){ //Este bucle pone en el array paginas los archivos ordenados de menor a mayor
$menor = key($array);
foreach($array as $indice => $archivo){
if( $indice < $menor ) $menor = $indice;
}
paginas[] = $archivos[$menor];
unset($archivos[$menor]);
}
En este punto tienes en $paginas todos los archivos .txt ordenados de menor a mayor independientemente del numero. $pagina[0] sera el 1.txt o el 2.txt o el primer nº que tengas.
Asi sabes que $paginas[5] es la pagina de noticias 6 independientemente del nº que tenga como nombre el archivo .txt. Puedes borrar los archivos intermedios que quieras, que no afectara al indice.