Utilizzo il codice che segue per leggere i file all'interno di una cartella e mostrarli.

Premetto che per ogni file "jpg" ne esiste uno "txt".

Il problema dove sta?
Che se tutti i file sono "jpg" o "JPG" funziona tutto bene, ma se si alternano "jpg" a "JPG" mi sballa.
Penso dipenda dal fatto che il server li gestisce in ordine alfabetico e che "jpg" è "JPG" non hanno la stessa posizione . Sapete aiutarmi?

codice:
    <?php
    //La funzione di questa pagina ‡ quella di leggere mostrare le immagini all'interno della cartella $entry
    //Il parametro $entry viene ricevuto dalla pagina precedente ed indica la sottocartella su cui si svolgeranno le operazioni
    $d = dir("galleria/$entry");
    //ciclo while per scorrere il contenuto della cartella
    $a = $entry2;
    while (false !== ($a = $d->read())) {
    $patch = "$entry/$a";
	//controllo se $entry ‡ diverso da "." & ".."
      list($nome, $estensione) = explode(".",$a);
      $FileName = $nome.".txt";  
      if($a != "." && $a != ".." && $estensione != "txt"){
        //stampo la prima immagine utile
        echo "<div align=\"center\"><center><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" width=\"100%\" id=\"AutoNumber1\"><tr><td width=\"50%\" valign=\"top\"><div align=\"center\"><center><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" width=\"80%\" id=\"AutoNumber2\"><tr><td width=\"100%\"><p align=\"center\"><a href=\"javascript:Popup('galleria/$entry/$a')\"><img src=\"galleria/resize.php?patch=$patch\" border=\"0\"></a></td></tr><tr><td width=\"100%\">";
        if(false !== ($a = $d->read())){
          echo "<p align=\"center\">$a</td></tr></table></center></div></td>";
            if(false !== ($a = $d->read())){
            $patch2 = "$entry/$a"; 
            echo "<td width=\"50%\" valign=\"top\"><div align=\"center\"><center><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" style=\"border-collapse: collapse\" width=\"80%\" id=\"AutoNumber3\"><tr><td width=\"100%\"><p align=\"center\"><a href=\"javascript:Popup('galleria/$entry/$a')\"><img src=\"galleria/resize2.php?patch2=$patch2\" border=\"0\"></a></td></tr><tr><td width=\"100%\">";
              if(false !== ($a = $d->read())){
                echo"<p align=\"center\">$a</td></tr></table></center></div></td></tr></table></center></div>";
        
              }
          }
       } 
    }              
		
      }
  $d->close();
?>