Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/04/2003, 10:50
fran86
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Primero que nada tenes que cargar los archivos en un array (si los obtenes con las funciones de directorios eso no seria problema) y despues usas usort() con esta funcion que te hice.
Aca tenes un ejemplo:
Código PHP:
function ordenaporextension($a$b)
{
    
$exta strrchr($a".");              // obtiene la extensión de $a
    
$extb strrchr($b".");              // obtiene la extensión de $b
    
return strnatcasecmp($exta$extb);    // devuelve <0; =0 o >o
}

$archivos = array (
                   
"archivo1.gif",
                   
"archivo4.png",
                   
"archivo2.gif",
                   
"archivo3.jgp",
                   
"archivo3.gif",
                   
"archivo5.gif",
                   
"archivo1.jgp",
                   
"archivo2.jgp",
                   
"archivo4.gif",
                   
"archivo4.jgp",
                   
"archivo3.png",
                  );
                  
print_r($archivos);                     // muestra sin ordenar
usort($archivos"ordenaporextension"); // aqui se ordena segun la funcion ordenaporextension()
print_r($archivos);                     // muestra ordenado 
Algunos links!
usort ordena una matriz segun una funcion de comparacion definida por el usuario
http://www.php.net/usort

strrchr busca la ultima aparicion de una cadana
http://www.php.net/strrchr

strnatcasecmp compara 2 cadenas segun el ordena natural ( una forma facil de definir orden natural es "la que esta primero en el abecedario")
http://www.php.net/strnatcasecmp

print_r es solamente para mostrarte info de una var.
http://www.php.net/print_r

Saludos.