"is_dir" erkennt Ordner nicht

lolilol

Mitglied
Tag,

ich habe derzeit ein Problem mit der Funktion 'is_dir'.
Ich habe eine Funktion gebastelt, dass einen übergebenen Ordner ausliest und die übergebenen Files darauf überprüft, ob es sich um Ordner handelt.

Leider erkennt er Ordner nur in dem Verzeichniss als solche an, in dem sich das Script befindet.

d.h.:

Verzeichnissstruktur:
- script.php
- Ordner Nr.1
- Ordner Nr.2
|- Unterordner

Script:
PHP:
function catch_files($directory) {
	$open = dir($directory);
	$files = "";
	while ($temp = $open->read()) {
		$dummy['name'] = $temp;
		$dummy['isdir'] = is_dir($temp);
		$files[] = $dummy;
	}
	$open->close();
	error_list($files, "name");
	error_list($files, "isdir");
	return $files;
}
(Nur ein Auszug, kein Anspruch auf Vollständigkeit)

Ordner Nr.1 und Ordner Nr.2 werden als solche erkannt, Unterordner jedoch NICHT, bzw. er wird als Datei deklariert.
('.' und '..' werden erkannt, alle Dateien auch!)

Hat jemand eine Idee? Ich habe rumgefragt und das Forum durchsucht, aber leider nichts gefunden]

Greez
loli
 
Du musst den Pfad zum Unterordner (ausgehend vom aufrufenden Script) vor den Namen der Unterordner schreiben. Oder Du wechselst mittels [phpf]chdir[/phpf] in den Ordner, in dem der Unterordner ist.
 
Zuletzt bearbeitet:
Ich denke eher, dass es
PHP:
$dummy['isdir'] = is_dir($directory.'/'.$temp);
heißen muss.

//Argh, ich hab immer zu lange das "Beitrag schreiben"-Fenster auf. snuu war also schneller.
 
Problem gelöst, danke ihr beide (Theorie + Praxis ^^).

ludz Beispiel hat es gelöst (Fürs Protokoll, damit alle anderen wissen, wie die Lösung ist.)

Danke!

loli

PS: Muss ne Kreativitätsschranke gehabt haben... sowas probiert man doch als erstes aus, oder?
 
Zurück