Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/03/2009, 20:11
juan_benitez
 
Fecha de Ingreso: marzo-2009
Mensajes: 12
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Ordenar array multidimensional

Hola, para hacer ese ordenamiento te recomiendo usar la funcion array_multisort, al principio puede ser un poco confusa pero luego que la usas varias veces es genial. Ademas, es tan poderosa casi como el ORDER BY de SQL.

Ejemplo:
Código PHP:
$datos[] = array(0'house''casa');
$datos[] = array(1'acero''plomo'); 

foreach (
$datos as $key => $fila) {
            
$col1[$key]  = $fila[1]; // columna de house
            
$col2[$key] = $fila[2]; //columna de casa
        
}

//ordenamos ascendente por la columna house
array_multisort($col1SORT_ASC$datos);
print_r($datos); 
En el ejemplo anterior tenemos un array como el que tu estás manejando, la idea es poner las columnas que te interesan ordenar en arrays independientes.
Dentro del foreach ponemos en $col1 los valores de la columna house, es decir, "house" y "acero"; luego a la funcion array_multisort le pasamos la columna por la que queremos ordenar (en el ejemplo es house), si es ascendente o descendente y finalmente el array original donde podemos ver el resultado.

Ahora tenemos el array $datos ordenado por la columna house.

espero que te sirva, saludos, Juan.