elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  ordenación arrays
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ordenación arrays  (Leído 2,240 veces)
nØFi#
Overclock3r
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.338


\x2E


Ver Perfil
ordenación arrays
« en: 15 Junio 2009, 17:16 pm »

Buenas,

Tengo un array que contiene varios arrays dentro y me gustaria ordenar por un campo en concreto.
Para que lo veais mas claro, el array es este:

Código:
Array
(
    [0] => Array
        (
            [id] => 5
            [descripcio] => desc5
        )

    [1] => Array
        (
            [id] => 4
            [descripcio] => desc4
        )

    [2] => Array
        (
            [id] => 8
            [descripcio] => desc8
        )

)

Los arrays de dentro tienen dos campos, el id y la descripcion. Yo lo que quiero es ordenar por el campo id. Es decir, que el $array[1]['id'] que vale 4, estuviera por delante de $array[0]['id'] que vale 5. Nose si me explico bien..

He mirado las funciones de arrays en php.net pero no veo ninguna que me sirva (a lo mejor se me escapa alguna...)

Alguien tiene alguna idea de como puedo hacerlo? O lo que quiero no es factible?

sALu2!


« Última modificación: 15 Junio 2009, 17:22 pm por nØFi# » En línea

#
nØFi#
Overclock3r
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.338


\x2E


Ver Perfil
Re: ordenación arrays
« Respuesta #1 en: 15 Junio 2009, 17:48 pm »

Lo tengo!  ;-)


Código
  1. function ordenarMultidimensional($arrayOriginal, $camp)
  2. {
  3.    $posicio = array();
  4.    $novaFila = array();
  5.    $resultat = array();
  6.  
  7.    foreach ($arrayOriginal as $key => $fila)
  8.    {
  9.        $posicio[$key]  = $fila[$camp];
  10.        $novaFila[$key] = $fila;
  11.    }
  12.  
  13.    asort($posicio);
  14.  
  15.    foreach ($posicio as $key => $val)
  16.    {    
  17.        array_push($resultat,$novaFila[$key]);
  18.    }
  19.    return $resultat;
  20. }
  21.  


En línea

#
^Cloud^

Desconectado Desconectado

Mensajes: 64


La tierra es plana.


Ver Perfil
Re: ordenación arrays
« Respuesta #2 en: 15 Junio 2009, 21:13 pm »

Personalmente suelo usar la función array_multiosort de php. Al principio es un poco lioso de entender pero es muy útil a la hora de ordenar matrices en php.

http://es2.php.net/manual/en/function.array-multisort.php

Un saludo,
En línea

Ahora resulta que imagino mi pasado
y llevo en esta clínica cuarenta años.
Nunca jamás he pisado la calle
y el electroshock ha sido mi padre
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Metodos de ordenacion - Pascal
Programación General
M33RK4T 0 1,681 Último mensaje 30 Abril 2012, 06:58 am
por M33RK4T
ORDENACION DE NOTAS POR FECHAS EN JAVA.
Java
el_otro_yo 8 6,158 Último mensaje 19 Mayo 2012, 17:38 pm
por RyogiShiki
Ordenación de tablas « 1 2 »
Programación C/C++
muymuyperdido 12 5,093 Último mensaje 5 Enero 2013, 11:57 am
por muymuyperdido
[SOLUCIONADO]Urgente: Ordenacion
Programación C/C++
muymuyperdido 0 1,269 Último mensaje 10 Enero 2013, 19:42 pm
por muymuyperdido
Duda con algoritmos de ordenación
Programación General
Linton 2 1,817 Último mensaje 20 Agosto 2013, 08:11 am
por Linton
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines