Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
DESCULPE meu erro português não consegui alterar o título (decrescente**)
Olá pessoal não manjo muito em XML estou aprendendo agora.
Eu sei listar o XML mas colocar em ordem não sei fazer.
Tenho esse XML como exemplo
XML
<sistema>
<data>
<nome>fulano</nome>
<email>email@email.com.br</email>
<login>fulano</login>
</data>
</sistema>
<sistema>
<data>
<nome>fulano1</nome>
<email>email1@email1.com.br</email>
<login>fulano</login>
</data>
</sistema>
<sistema>
<data>
<nome>fulano2</nome>
<email>email2@email2.com.br</email>
<login>fulano2</login>
</data>
</sistema>
PHP
$sistema = $algo->sitemaB();
$xml = simplexml_load_string($sistema);
$ex = sprintf("/*/data[contains(login, 'a')]", 'a'); // ACHO QUE SERIA AQUI esquema de criar DESC ou ASC
$res = $xml->xpath($ex);
$minhaArray = array();
foreach($res as $sistema){
$minhaArray[] = array(
'nome'=>(string)$sistema->nome,
'email'=>(string)$sistema->email,
'login'=>(string)$sistema->login,
);
}
sort($minhaArray);
$contas = array();
for ($ab=$start; $ab<$end; ++$ab) {
if (isset($minhaArray[$ab])) {
$contas[] = $minhaArray[$ab];
}
}
foreach ($contas as $sistema)
// listar
echo $sistema->login. "<br />". $sistema->email. "<br /> . $sistema->login;
}Valeu Galera..
Você quer pra que esse xml? Pra mostrar na tela? Pra salvar em banco? Que tal passar ele pra um array antes de ordenar?
Obrigado pela resposta.... :yes:
Quero mostrar na tela, pois já esta vindo, apenas listar.. Esse esquema de Array pelo XML estou confuso.. poderia dar um help?
vc já tem em array. então ordene o array usando array_multisort
você já tem em array. então ordene o array usando array_multisort
Obrigado pela dica eu consegui realizar assim
$sistema = $algo->sitemaB();// XML vindo
$xml = simplexml_load_string($sistema);
$minhaArray = array();
foreach($xml as $definir){
$minhaArray[] = array(
'nome'=>(string)$definir->nome,
'email'=>(string)$definir->email,
'login'=>(string)$definir->login,
);
}
sort($minhaArray); /* usei o sort que entendi deixou em ordem alfabética --> [http://php.net/manual/pt_BR/function.sort.php](http://php.net/manual/pt_BR/function.sort.php) */
foreach ($minhaArray as $definir)
// listar
echo $definir["login"]. "<br />". $definir["email"]. "<br />" . $definir["login"];
}
Quem precisar está ai.
Valeu
Você quer pra que esse xml? Pra mostrar na tela? Pra salvar em banco? Que tal passar ele pra um array antes de ordenar?