Hi @gain
Hab da mal was geschrieben
Code:
$start_dir = "C:/Offline_server/test/";
$Root_Absolute = $start_dir;
$path_array = array();
$last_dir = "..";
function read_dir ($path, $ext = ".php", $sub_dir = false) {
global $path_array, $Root_Absolute;
$dir_path = dir($path);
while($dir_entry = $dir_path->read()) {
$dir_type = filetype($path."/".$dir_entry);
if ($dir_type == "dir") {
if ($sub_dir) {
if ($dir_entry != "." && $dir_entry != "..") {
read_dir ("$path$dir_entry/",$ext,$sub_dir);
}
}
}else{
if( substr($dir_entry, strlen($ext)*-1) == $ext) {
array_push($path_array, array(substr($path, strlen($Root_Absolute)),$dir_entry));
}
}
}
$dir_path->close();
}
read_dir($start_dir, ".php");
sort ($path_array);
foreach ($path_array as $entry) {
if ($entry[0] != $last_dir) {
echo "verzeichnis: ".$entry[0]."<br>";
$last_dir = $entry[0];
}
echo $entry[0]." - ".$entry[1]."<br>";
}
so was macht das Ding bzw. was kann es?
der Funktion
read_dir können folgende Parameter angegeben werden.
read_dir (Pfad,
ext,
sub_dir)
Pfad ist Pflicht, es gibt an welches Verzeichnis durchsucht wird.
ext gibt an nach welchem Format gesucht werden soll
Default: .php
sub_dir gibt an ob Unter-Ordner auch durchsucht werden sollen (True / False)
Default: False
Es liefert alles in einem Array zurück -> $path_array
Diese muss zu erst mal sortiert werden -> sort ($path_array);
danach wird das Array durchlaufen:
Dieser Teil ist zuständig für die Sub-Dirs, damit er es nett ausgibt
bzw. das du weißt das er nun in eunen neuen Ordner ist
Code:
if ($entry[0] != $last_dir) {
echo "verzeichnis: ".$entry[0]."<br>";
$last_dir = $entry[0];
}
hier stehen dir die Variablen
$entry[x] zurverfügung.
$entry[0] beinhaltet den Namen des Verzeichnisses
$entry[1] ist die erste Datei die in das Suchmuster gepasst hat
Diese Zeile gibt dir dann das restliche Verzeichnis aus
Code:
echo $entry[0]." - ".$entry[1]."<br>";
hier stehen dir die Variablen
$entry[x] zurverfügung.
$entry[0] beinhaltet den Namen des Verzeichnisses
$entry[1] ist die erste Datei die in das Suchmuster gepasst hat
Genau in diesen Teil führst du auch dein SQL-Statement aus!!
Sonstige Variablen:
$start_dir gibt an welches Verzeichnis er durchsuchen soll
$Root_Absolute falls du den gesamten Pfad im Array brauchst, setzte es auf "", wenn du es auf
$Root_Absolute = $start_dir; setzt
wird der Pfad abgeschnitten
$path_array Ist das Array in dem alles steht
Bei Fragen einfach melden