<?php

  //  Letzte Ă„nderung am 02.12.2011
  //  Version: V0212201104Klaus2
  //  vielen Dank an Klaus2 fĂĽr dieses Skript. Von Tommy noch leicht modifiziert
 
  //  Voraussetzung es gibt keine Unterverzeichnisse und
  //  alle Dateien haben einen Dateinamen und eine Endung
 
  //  Verzeichnis aus dem die Dateien gelesen werden sollen, hier das Verzeichnis 'Beispiel'
  $Verzeichnis = '../assets/images/Beispiel/';
 
  $Suche = $Verzeichnis . '*.*';
 
  //  Alle Dateien ermitteln
  $AlleDateien = glob($Suche);
 
  //  Alle Dateien ermittelten Datein zählen
  $Anzahl = count($AlleDateien);
 
 
 
 
  //  /*
  //  ANFANG: - die ersten beiden // oben vor dem /* entfernen, um diesen Bereich auszukommentieren und bei ENDE: auch
  //  diesen Bereich von ANFANG: bis ENDE: könnte man auch auskommentieren
  //  mit /* am ANFANG und */ am ENDE
  //  Pfad von den Dateinamen entfernen
  //  Wird eigentlich nur benötigt wenn man eine Gesamtliste
  //  der Dateien ohne Pfad ausgeben will sonst nicht
 
  for ($i = 0; $i < $Anzahl; $i++)
  {
    $DateiPfadNameEndung_aufgteilt = explode("/", $AlleDateien[$i]);
    $DateiPfadNameEndung_aufgeteilt_und_umgedreht = array_reverse($DateiPfadNameEndung_aufgteilt);
    $DateiNameEndung = $DateiPfadNameEndung_aufgeteilt_und_umgedreht[0];
    $AlleDateien[$i] = $DateiNameEndung;
  }
 
  //  Alle Dateien ohne Pfad ausgeben
  echo '<br>';
  echo "<b>Folgende $Anzahl Dateien wurden gefunden:<br>";
  echo "Verzeichnis: <i>$Verzeichnis</i></b>";
  echo '<br><br>';  
 
  for ($i = 0; $i < $Anzahl; $i++)
  {
    echo $AlleDateien[$i];
    echo '<br>';  
  }
 
  //  ENDE: - die ersten beiden // unten vor dem */ entfernen, um diesen Bereich auszukommentieren und bei ANFANG: auch
  //  */
 
 
 
 
  echo '<br><hr>';
 
  // Alle Endungen feststellen
  for ($i = 0; $i < $Anzahl; $i++)
  {
    $DateiNameEndung_aufgteilt = explode(".", $AlleDateien[$i]);
    $DateiNameEndung_aufgeteilt_und_umgedreht = array_reverse($DateiNameEndung_aufgteilt);
    $AlleEndungen[] = $DateiNameEndung_aufgeteilt_und_umgedreht[0];
  }
 
  //  Alle Endungen nur einmal nehmen
  $AlleEndungen_einmal = array_unique($AlleEndungen);
 
  //  Alle Endungen nur einmal genommen und neu durchnummeriert
  $AlleEndungen_einmal = array_values($AlleEndungen_einmal);
 
  //  Anzahl der verschiedenen Endungen
  $AnzahlderEndungen = count($AlleEndungen_einmal);
 
  for ($i = 0; $i < $AnzahlderEndungen; $i++)
  {
    $Suche = $Verzeichnis . '*.' . $AlleEndungen_einmal[$i];
    $DateimiteinerbestimmtenEndung = glob($Suche);
    $AnzahlderDateienmiteinerbestimmtenEndung = count($DateimiteinerbestimmtenEndung);
    echo '<br>';     
    echo "<b>Dateien mit der Endung $AlleEndungen_einmal[$i] insgesamt: $AnzahlderDateienmiteinerbestimmtenEndung</b>";
    echo '<br>';
    for ($ii = 0; $ii < $AnzahlderDateienmiteinerbestimmtenEndung; $ii++)
    {
      $DateimiteinerbestimmtenEndung_aufgteilt = explode("/", $DateimiteinerbestimmtenEndung[$ii]);
      $DateimiteinerbestimmtenEndung_aufgteilt_und_umgedreht = array_reverse($DateimiteinerbestimmtenEndung_aufgteilt);
      $ZeigeDatei = $DateimiteinerbestimmtenEndung_aufgteilt_und_umgedreht[0];
      echo'<br>';
      //  mit Link - bei Bedarf zwei // vor die nächste Zeile setzen
      echo '<a href="' . $Verzeichnis . $ZeigeDatei . '" target="_blank">' . $ZeigeDatei . '</a>';
      //  ohne Link - bei Bedarf die beiden // vor der nächsten Zeile entfernen
      //  echo $ZeigeDatei;
    }
    echo '<br>';
  }
 
  echo '<br>';
  echo "<b>Anzahl der Endungen $AnzahlderEndungen</b>";
 
  echo '<br><br>';
  echo 'Folgen Endungen wurden verwendet: ';
 
  for ($i = 0; $i < $AnzahlderEndungen-1; $i++)
  {
    echo "<b>$AlleEndungen_einmal[$i]</b>, ";
  }
 
  $LetzteEndung = $AnzahlderEndungen -1; 
  echo "<b>$AlleEndungen_einmal[$LetzteEndung]</b>";
  echo '<br><br>';
 
?>