Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/09/2008, 12:56
ARAPSPGON
 
Fecha de Ingreso: octubre-2007
Mensajes: 57
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: AYUDA con uasort() y reset() array bidimensional asociativo

muchas gracias juan

ya he podido , le he hecho unas modificaciones

Código PHP:

$productos
=array(array("Cod"=>"A",
                       
"Descrip"=>"Action",
                       
"Precio"=>100),
                 array(
"Cod"=>"P",
                       
"Descrip"=>"Photo",
                       
"Precio"=>10),
                 array(
"Cod"=>"F",
                       
"Descrip"=>"Flash",
                       
"Precio"=>40)
                 );



//--------------------------------------------------------
function visor($productos){
echo 
"<table border='1'>";
echo 
"<tr><td>COD</td><td>DESCRIP</td><td>PRECIO</td></tr>";
foreach(
$productos as $producto){
    echo 
"<tr>";
    foreach(
$producto as $indice=>$valor){
        echo 
"<td>$valor</td>";
    }
    echo 
"</tr>";
}
echo 
"</table>";
}


//--------------------------------------------------------
echo "SIN ORDENAR<br />";
visor($productos);
//--------------------------------------------------------


//--------------------------------------------------------
echo "ORDENAR POR [DESCRIP](ASC)<br />";
function 
descAsc($a,$b){
    return(
$a['Descrip'] > $b['Descrip']);
}
uasort($productos'descAsc');
visor($productos);
//--------------------------------------------------------

//--------------------------------------------------------
echo "ORDENAR POR [DESCRIP](DESC)<br />";
function 
descDesc($a,$b){
    return(
$a['Descrip'] < $b['Descrip']);
}
uasort($productos'descDesc');
visor($productos);
//--------------------------------------------------------

//--------------------------------------------------------
echo "ORDENAR POR [PRECIO](ASC)<br />";
function 
precAsc($a,$b){
    return(
$a['Precio'] > $b['Precio']);
}
uasort($productos'precAsc');
visor($productos);
//--------------------------------------------------------

//--------------------------------------------------------
echo "ORDENAR POR [PRECIO](DESC)<br />";
function 
precDesc($a,$b){
    return(
$a['Precio'] < $b['Precio']);
}
uasort($productos'precDesc');
visor($productos);
//-------------------------------------------------------- 

lo que no se porque no funciona la funcion reset despues de recorrer el array asociativo reset()

Código PHP:
for ($fila=0;$fila<3;$fila++){
          while(list (
$key$value)=each($productos[$fila]))
          {
           echo
"|$value";
           }
      echo 
"|<br>";
     }


reset($productos); // volver a posicion [0][0]

//no vuelve a recorrer el array
for ($fila=0;$fila<3;$fila++){
          while(list (
$key$value)=each($productos[$fila]))
          {
           echo
"|$value";
           }
      echo 
"|<br>";
     }