Hola amigos de foros del web.
Tengo este XML:
Código:
<?xml version="1.0" encoding="utf-8"?>
<rank>
<player name="Pablo" edad="17"/>
<player name="Juan" edad="40"/>
<player name="Pedro" edad="19"/>
<player name="Carlos" edad="15"/>
<player name="Esteban" edad="21"/>
<player name="Vicente" edad="45"/>
</rank>
La idea seria ordenar el resultado o el fichero (lo que les resulte mas facil de hacerme entender) de forma creciente o decreciente da lo mismo la cosa es que quede ordenado en funcion a la edad
cosa que quede asi:
Código:
<?xml version="1.0" encoding="utf-8"?>
<rank>
<player name="Carlos" edad="15"/>
<player name="Pablo" edad="17"/>
<player name="Pedro" edad="19"/>
<player name="Esteban" edad="21"/>
<player name="Juan" edad="40"/>
<player name="Vicente" edad="45"/>
</rank>
Espero que me puedan ayudar un poquito que estoy estancado aqui.
Ya lo resolvi tube que ocupar un metodo demasiado arcaico para hacerlo, se los dejo porque me dio risa como lo hize....
rank.xml
<?xml version="1.0" encoding="utf-8"?>
<rank>
<player name="Carlos" edad="15"/>
<player name="Pablo" edad="17"/>
<player name="Pedro" edad="19"/>
<player name="Esteban" edad="21"/>
<player name="Juan" edad="40"/>
<player name="Vicente" edad="45"/>
</rank>
"Procesador" de datos
<?php
$xml = simplexml_load_file("rank.xml");
$count = count($xml->player)-1;
for($i=0; $i<=$count; $i++)
{
$n[$i] = ''.$xml->player[$i][edad].'@@'.$xml->player[$i][name].'';
}
sort($n);
reset($n);
for($a=0; $a<=$count; $a++)
{
$name = str_replace("@@", "", strstr($n[$a], "@@"));
$level = str_replace("@@$name", "", $n[$a]);
echo "El jugador: <b>$name</b> tiene <b>$level</b> años<br/>";
}
?>