Sostituisci il codice che stai utilizzando con questo:
codice:
$d = dir('.'); 
while(false !== ($entry = $d->read())) { 

 // Elenca "solo" i file con estensione .txt 
 if(!is_dir($entry) && end(explode('.', $entry)) == 'txt') {

   // Inserisce in array il numero di file presenti nella directory
   $num_files[] = $entry;

   // Stampa a video l'elenco dei file trovati
   echo "<a href=\"$entry\">$entry</a>
\n"; 
 }
} 
$d->close(); 

// Conta e visualizza il numero dei file trovati
echo 'Totale file: ' . count($num_files);
E' estremamente semplice da comprendere leggendo i commenti...