login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Uitlezen xml en sorteren op datum (Opgelost)

Offline zwobbel - 14/02/2008 13:01 (laatste wijziging 14/02/2008 13:03)
Avatar van zwobbelPHP gevorderde Hallo ik heb een xml bestand met volgende opbouw:

  1. <file>
  2. <url>
  3. www.url.be/movie.avi
  4. </url>
  5. <filename>
  6. Naruto[139]Pure_Terror!_The_House_Of_Orochimaru[C-W].avi
  7. </filename>
  8. <filegrote>-0MB</filegrote>
  9. <datum>1202988838</datum>
  10. </file>


Volgende code om uit te lezen:
  1. <?
  2. $XMLBESTAND = "http://www.website.be/bestanden.xml";
  3. $xml = simplexml_load_file($XMLBESTAND);
  4. foreach ($xml->file as $bestand) {
  5.  
  6. if($userdata['session_logged_in']) {
  7. $downloadURL = $bestand->url;
  8. }
  9.  
  10. $tpl->newBlock('DATAROW2');
  11. $tpl->assign( array(
  12. 'FileNaam' => afkorten($bestand->filename,60),
  13. 'EpisiodeDownload' => $downloadURL,
  14. 'EpisiodeSize' => $bestand->filegrote
  15. )
  16. );
  17. }
  18. ?>


Hoe kan ik er nu voor zorgen dat de gegevens worden gesorteerd op de datum bij het uitlezen?

1 antwoord

Gesponsorde links
Offline Stijn - 14/02/2008 18:02 (laatste wijziging 14/02/2008 18:03)
Avatar van Stijn PHP expert Schrijf zelf een functie 

  1. function sortSimpleXml( & $xml )
  2. {
  3.  
  4. for( $i = 0 ; $i < count( $xml->file ) ; $i++ ) {
  5.  
  6. for( $j = $i+1 ; $j < count( $xml->file ) ; $i++ ) {
  7.  
  8. if( $xml->file[$i]->datum < $xml->file[$j]->datum ) {
  9. $tmp = $xml->file[$i];
  10. $xml->file[$i] = $xml->file[$j];
  11. $xml->file[$j] = $tmp;
  12. }
  13.  
  14. }
  15.  
  16. }
  17.  
  18. }
  19.  
  20. sortSimpleXml( $xml->file );


Ik veronderstel dat die datum UNIX timestamp is en dus zal de grootste UNIX timestamp eerst staan omdat die de recenste datum voorstelt. Om DESC te sorteren moet je die < in de if veranderen in >.

Het kan zijn dat die code héél lang moet uitvoeren (http://be2.php.net/manual/en/ref.simplexml.php#81048).
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.205s