xml - How to sort SimpleXMLElement on PHP -


i want know how can sort simple xml elements php. yes, found threads address same subject — couldn't solve problem.

the xml want sort is:

<?xml version="1.0" encoding="utf-8"?> <cursos>   <curso>     <id>drw</id>     <nome>design responsivo</nome>     <categoria>web</categoria>     <inicio>30/02/2013</inicio>     <periodo>sábados de manhã</periodo>     <cargahoraria>40h</cargahoraria>     <objetivos></objetivos>   </curso>   <curso>     <id>msq</id>     <nome>mysql</nome>     <categoria>banco de dados</categoria>     <inicio>30/03/2013</inicio>     <periodo>sábados de manhã</periodo>     <cargahoraria>20h</cargahoraria>     <objetivos></objetivos>   </curso>   <curso>     <id>mby</id>     <nome>iniciação à informática</nome>     <categoria>iniciantes e usuários av.</categoria>     <inicio>30/04/2013</inicio>     <periodo>matutino 1</periodo>     <cargahoraria>80h</cargahoraria>     <objetivos></objetivos>   </curso>   <curso>     <id>fcs</id>     <nome>desenvolvendo em c#</nome>     <categoria>desenvolvimento</categoria>     <inicio>14/04/2013</inicio>     <periodo>domingo</periodo>     <cargahoraria>60h</cargahoraria>     <objetivos></objetivos>   </curso>   <curso>     <id>may</id>     <nome>modelagem em maya</nome>     <categoria>artes gráficas</categoria>     <inicio>13/04/2013</inicio>     <periodo>sábado 08h:00-13h:00</periodo>     <cargahoraria>60h</cargahoraria>     <objetivos></objetivos>   </curso> </cursos> 

i found this , this solution, logic apply on multidimensional xml array not me. can me?

thanks in advance.

there's no real easy way sort using simplexml; have create array elements, sort them , reconstruct xml:

$d = simplexml_load_string($xml); // turn array $e = array(); foreach ($d->curso $curso) {         $e[] = $curso; } // sort array usort($e, function($a, $b) {         return $a->cargahoraria - $b->cargahoraria; }); // put echo '<cursos>'; foreach ($e $node) {         echo $node->savexml(); } echo '</cursos>'; 

Comments

Popular posts from this blog

Delphi XE2 Indy10 udp client-server interchange using SendBuffer-ReceiveBuffer -

Qt ActiveX WMI QAxBase::dynamicCallHelper: ItemIndex(int): No such property in -

Enable autocomplete or intellisense in Atom editor for PHP -