Einzelnen Beitrag anzeigen

Benutzerbild von Pr0g
Pr0g

Registriert seit: 21. Mai 2004
809 Beiträge
 
Delphi 7 Personal
 
#16

Re: [PHP] Dateiliste gruppieren

  Alt 13. Mär 2006, 01:47
Ich habe den Code aus diesem Post von dir mal als Vorlage genommen. Da ich nicht genau weiß, ob du die Funktion ListFiles() auch noch anders nutzen willst (etwa anders sortieren), habe ich deine Funktionen als Grundlage für den Code genommen:
Code:
<?php
  // Dateien nach Datum sortiert als Liste auslesen
  $dir = './';
  $files = ListFiles($dir, 'time');
 
  // Dateien nach Jahren gruppiert ausgeben
  $group_year = 0;
  foreach ($files as $file) {
    $file = $dir . $file;
    $file_year = date('Y', filemtime($file));
   
    if ($file_year <> $group_year) {
      if ($group_year > 0) {
        echo '

';
      }
      $group_year = $file_year;
      echo $group_year . '
';
    }

    echo GetTitleFromHTML($file) . '
';
  }
?>
Zum Testen des Scriptes hatte ich mir ein paar Dummyfunktionen geschrieben, wie du an meinem ListFiles siehst wird das Datum zum Sortieren mitgespeichert. Würde dies erhalten bleiben (was deine ja nicht macht soweit ich das sehen konnte), so kann man sich das spätere Auslesen sparen...
Code:
  // --- [Start: Dummy Funktionen zum Test] -----------------------------------
  function ListFiles($dir, $foo) {
    $dh = opendir($dir);
    $files_tmp = array();
    while (($file = readdir($dh)) !== false) {
      if (is_file($file)) {
        $files_tmp[] = array(filemtime($dir . $file), $file);
      }
    }
    arsort($files_tmp);
    $files = array();
    foreach ($files_tmp as $file){
      $files[] = $file[1];
    }
    return $files;
  }
   
  function GetTitleFromHTML($file) {
    return '[' . date('Y-m-d', filemtime($file)) . '] ' . basename($file);
  }
  // --- [Ende: Dummy Funktionen zum Test] ------------------------------------
  Mit Zitat antworten Zitat