Foros del Web » Programando para Internet » PHP »

ordenar un array de este tipo

Estas en el tema de ordenar un array de este tipo en el foro de PHP en Foros del Web. Array ( [id1] => -4 [id2 ] => 55 [id3 ] => 5 [idn] => -1.1 ) el array se genera dinamicamente... quiero ordenar el ...
  #1 (permalink)  
Antiguo 16/06/2008, 05:02
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 8 meses
Puntos: 1
ordenar un array de este tipo

Array (
[id1] => -4
[id2 ] => 55
[id3 ] => 5
[idn] => -1.1
)

el array se genera dinamicamente...

quiero ordenar el array porel valor numerico, es decir, este resultado:


Array (
[id2] => 55
[id3 ] => 5
[idn ] => -1.1
[id1] => -4
)

hay alguna funion php que lo haga directamente? como count($array), print_r($array) ...


he mirado las faqs pero los ejemplos son para arrays multidimensionales, mas complicados que lo que yo busco



gracias
  #2 (permalink)  
Antiguo 16/06/2008, 05:06
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 9 meses
Puntos: 52
Respuesta: ordenar un array de este tipo

has provado rsort () ??
  #3 (permalink)  
Antiguo 16/06/2008, 05:16
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 8 meses
Puntos: 1
Respuesta: ordenar un array de este tipo

si rsort lo ordena como yo quiero, pero se pierden los valores de las clave

es decir:

de tener esto

Array (
[id2] => 55
[id3 ] => 5
[idn ] => -1.1
[id1] => -4
)


paso a tener:

Array (
[0]=> 55
[1] => 5
[2] => -1.1
[3] => -4
)

y necesito mantener las parejas "clave" => "valor"
  #4 (permalink)  
Antiguo 16/06/2008, 05:34
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 8 meses
Puntos: 1
Respuesta: ordenar un array de este tipo

resuelto con arsort($array);


la cuestión ahora, al ser un array asociativo tengo que acceder a los elementos por sus claves...
puedo acceder por su posición, es decir,

echo $array[0];

porque ésto último no me imprime nada :(
  #5 (permalink)  
Antiguo 16/06/2008, 05:38
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 9 meses
Puntos: 52
Respuesta: ordenar un array de este tipo

Cita:
Iniciado por MandrakeXP Ver Mensaje
resuelto con arsort($array);


la cuestión ahora, al ser un array asociativo tengo que acceder a los elementos por sus claves...
puedo acceder por su posición, es decir,

echo $array[0];

porque ésto último no me imprime nada :(
Creo que los arrays asociativos se llaman por el nombre de su clave

echo $array[nombre_clave];
  #6 (permalink)  
Antiguo 16/06/2008, 05:43
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 8 meses
Puntos: 1
Respuesta: ordenar un array de este tipo

si, pero quiero hacer "echo" de los 9 primeros, y dinamicamente no sé como se llaman...

Última edición por MandrakeXP; 16/06/2008 a las 13:21
  #7 (permalink)  
Antiguo 16/06/2008, 05:59
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 9 meses
Puntos: 52
Respuesta: ordenar un array de este tipo

mas o menos asi

foreach ($array as $clave => $valor){

echo " $clave=>$valor<br>";
}
  #8 (permalink)  
Antiguo 16/06/2008, 06:02
 
Fecha de Ingreso: marzo-2005
Mensajes: 271
Antigüedad: 19 años, 8 meses
Puntos: 1
Respuesta: ordenar un array de este tipo

quiero sólo los 9 primeros mmm he intentando hacer un break cuando foreach haga 9 vueltas, pero no se rompe la iteración...

Última edición por MandrakeXP; 16/06/2008 a las 13:21
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:09.