Foros del Web » Programando para Internet » PHP »

ordenar array

Estas en el tema de ordenar array en el foro de PHP en Foros del Web. Buenas a todos!!!! Estoy necesitando una ayudita, he creado un array de esta forma. Código PHP: while ( $row  =  pg_fetch_objet () $result ) { $i  ...
  #1 (permalink)  
Antiguo 27/07/2012, 09:59
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 11 meses
Puntos: 20
ordenar array

Buenas a todos!!!! Estoy necesitando una ayudita, he creado un array de esta forma.
Código PHP:


while ($row pg_fetch_objet()$result)
{


$i $i 1;
$array[$i] = $deuda;


hasta ahi todo bien!!!, ahora yo quiero orderna por deuda. lo hice de esta forma:

Código PHP:
arsort($array); 
cuando imprimo en pantalla. me aparece ordenado de esta forma

9
90
8
87
876
7
73.
etc, etc.
lo que yo necesito que lo ordene, es asi.
876
90
87
73
9
8
7

desde ya muchas gracias!!!
  #2 (permalink)  
Antiguo 27/07/2012, 10:08
 
Fecha de Ingreso: junio-2012
Mensajes: 23
Antigüedad: 12 años, 5 meses
Puntos: 8
Respuesta: ordenar array

//prueba con
asort($array, SORT_NUMERIC );

Para mayor información puedes consultar

http://www.php.net/manual/es/function.sort.php
  #3 (permalink)  
Antiguo 27/07/2012, 15:07
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 9 meses
Puntos: 155
Respuesta: ordenar array

y por que no lo ordenas desde la consulta ?

http://www.w3schools.com/sql/sql_orderby.asp



no se si inicialices me imagino que inicias con $i=1;


Código PHP:
Ver original
  1. $i = $i + 1;
  2. $array[$i] = $deuda;

mejor asi

Código PHP:
Ver original
  1. $array[$i++] = $deuda;

y si empezara en 0 el indice de tu arreglo nomas asi

Código PHP:
Ver original
  1. $array[] = $deuda;
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #4 (permalink)  
Antiguo 28/07/2012, 06:35
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 11 meses
Puntos: 20
Respuesta: ordenar array

Muchas gracias a los dos por las ayudas!!!, mogurbon el tema es que no puedo ordenar en la consulta, ya que este hace un calculo.
por ejemplo

1° leo el cliente
2° luego hago una resta de lo que debe con lo que pago y de ahi calculo la deuda.
El inconveniente que tengo ahora es: por ejemplo

yo traigo todo los datos personales de un cliente y necesito guardarlo en un array con el calculo de deuda, ordenarlo por deuda e imprimir los datos por pantalla dentro de una tabla.

los datos los guardo asi?

Código PHP:

$array
[idcli] = $deuda.",".$nom.",".$direccion

como hago para leer por ejemplo el nombre??, me explico?? muchas gracias por la ayuda!!
  #5 (permalink)  
Antiguo 30/07/2012, 19:38
 
Fecha de Ingreso: junio-2012
Mensajes: 23
Antigüedad: 12 años, 5 meses
Puntos: 8
Respuesta: ordenar array

Hola, una solución que puedes implementar es tener dos arreglos
relacionados de la misma forma es decir por $idCli ( se asume que es único )
uno que contenga $deuda ($arreglo_deuda ) y otro que almacene $nom.",".$direccion. ($arreglo_nombre)

De tal forma que cuando necesites ordenar de forma ascendente hagas uso de
asort( $arreglo_deuda )
cuando deses ordenar de forma descendente hagas uso de
arsort( $arreglo_deuda )

Una vez ordenado, para imprimir los resultados sería
foreach( $arreglo_deuda as $k=>$v )
echo "deuda:".$v."nombre:".$arreglo_nombre[ $k ];

//Espero te sea de ayuda.
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 22:06.