Ver Mensaje Individual
  #4 (permalink)  
Antiguo 12/07/2012, 10:16
Avatar de topo_bionico
topo_bionico
 
Fecha de Ingreso: junio-2012
Mensajes: 89
Antigüedad: 11 años, 11 meses
Puntos: 20
Respuesta: Ordenando una matriz

Cita:
Iniciado por h2swider Ver Mensaje
La verdad que no, no leíste detenidamente mi enunciado y me estas dando una respuesta automática, agradezco de todas maneras, ya conozco las funciones de ordenamiento. Pero como mencione, por las pre condiciones no son aplicables. Justamente porque lo que quiero ordenar esta en medio del alfabeto, y quiero que aparezca en un extremo.

Ya vi en otras respuestas tuyas casos similares donde no lees lo anterior y te apresuras a comentar. Agradezco tus intenciones de todas maneras, pero como consejo deberías ser un pelin menos ansioso.
Si no queres usar funciones no puedo obligarte.


No se como definís y cargas el array, así que hice uno imaginario. Trate de hacerlo simple.
Obviamente no tenes que usar los echo y print_r, solamente los puse para mostrar la salida, te aviso para que no te enojes pensando que no es como vos lo querias.
Algo así te sirve?

Código PHP:
<?php
$a1
=array('NOMBRE'=>"DARIO HOYOS",'EMAIL'=>'[email protected]','D_ESTADOUSUARIO'=>'Pendiente''N_SOLICITUD'=>'50');
$a2=array('NOMBRE'=>"JUAN CHOCLITO",'EMAIL'=>'[email protected]','D_ESTADOUSUARIO'=>'Aprobado','N_SOLICITUD'=>'68');
$a3=array('NOMBRE'=>"OSCAR PEREZ",'EMAIL'=>'[email protected]','D_ESTADOUSUARIO'=>'Rechazado','N_SOLICITUD'=>'34');
$a4=array('NOMBRE'=>"SERGIO DENIS",'EMAIL'=>'[email protected]','D_ESTADOUSUARIO'=>'Pendiente''N_SOLICITUD'=>'70');

$ordenar=array($a1,$a2,$a3,$a4);
$ordenado=array();//Array vacio para cargar los valores ordenados
foreach($ordenar as $row){ //Recorro el array
    
if ($row['D_ESTADOUSUARIO']=='Pendiente'){
        
array_unshift($ordenado,$row); //Si esta pendiente lo inserto al principio
    
}else{
        
array_push($ordenado,$row); //Sino, lo mando al final
    
}
    
print_r($row);
    echo 
'<br/>';
}
echo 
'------';
echo 
'<br/>';
foreach(
$ordenado as $row){ //Muestro el array ordenado
        
print_r($row);
        echo 
'<br/>';
}
?>

Salida por pantalla:
Código HTML:
Array ( [NOMBRE] => DARIO HOYOS [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Pendiente [N_SOLICITUD] => 50 ) 
Array ( [NOMBRE] => JUAN CHOCLITO [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Aprobado [N_SOLICITUD] => 68 ) 
Array ( [NOMBRE] => OSCAR PEREZ [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Rechazado [N_SOLICITUD] => 34 ) 
Array ( [NOMBRE] => SERGIO DENIS [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Pendiente [N_SOLICITUD] => 50 ) 
------
Array ( [NOMBRE] => SERGIO DENIS [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Pendiente [N_SOLICITUD] => 50 ) 
Array ( [NOMBRE] => DARIO HOYOS [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Pendiente [N_SOLICITUD] => 50 ) 
Array ( [NOMBRE] => JUAN CHOCLITO [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Aprobado [N_SOLICITUD] => 68 ) 
Array ( [NOMBRE] => OSCAR PEREZ [EMAIL] => [email protected] [D_ESTADOUSUARIO] => Rechazado [N_SOLICITUD] => 34 )