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>";
}