Nabend alle zusammen,
Hab gerade ein kleines Problem, wo ich nicht nachvollziehen kann, warum dies zu diesem Fehler kommt.
Ziel: Ich möchte eine File-Struktur per rekursion einlesen und in eine eigene Array-Struktur bringen. Das ansich ist auch nicht das Thema. In meiner Klasse habe ich eine setDir() Methode, in der wiederum eine weitere readDir(); Methode aufgerufen wird, die letztendlich auch die rekursion durchläuft und mir alles einlesen soll.
Hier habe ich einfach mal den Code meiner beiden Methoden, damit Ihr sehen könnt, wie ich die Array-Struktur aufbauen möchte:
Soeben habe ich den Fehler in sofern eingrenzen können, dass er erst ab der 2ten Ebene auftritt. Also sobald er das erste mal in die Zeile...
...springt. Was gibts zu beachten, wenn ich sowas vor habe?
Die reine Struktur, die mir mein Skript erzeugt, ist schon super so wie ich es haben will. Nur es kommt zu folgender Fehlermeldung bem Aufruf der filetype() Funktionen.
Dank euch, Gruß Mario
Hab gerade ein kleines Problem, wo ich nicht nachvollziehen kann, warum dies zu diesem Fehler kommt.
Ziel: Ich möchte eine File-Struktur per rekursion einlesen und in eine eigene Array-Struktur bringen. Das ansich ist auch nicht das Thema. In meiner Klasse habe ich eine setDir() Methode, in der wiederum eine weitere readDir(); Methode aufgerufen wird, die letztendlich auch die rekursion durchläuft und mir alles einlesen soll.
Hier habe ich einfach mal den Code meiner beiden Methoden, damit Ihr sehen könnt, wie ich die Array-Struktur aufbauen möchte:
PHP-Code:
/* setDir */
public function setDir( $path, $rec = true )
{
if ( file_exists( $path ) )
{
$this->structure[0]["title"] = "ROOT";
$this->structure[0]["open"] = true;
$this->readDir( $path );
$this->structure[0]["childs"] = $this->readDir( $path, $rec );
}
}
/* readDir */
private function readDir( $path, $rec = true )
{
$childs = array();
$verz = opendir ( $path );
while ( $file = readdir( $verz ) )
{
if ( filetype( $path.$file ) != ".." && filetype( $path.$file ) != "." )
{
$item = array();
$item["title"] = $file;
if ( filetype( $path.$file ) == "dir" )
{
$item["open"] = true;
$item["childs"] = $this->readDir( $path.$file );
}
$childs[] = $item;
}
}
closedir( $verz );
return $childs;
}
PHP-Code:
$item["childs"][] = $this->readDir( $path.$file );
Die reine Struktur, die mir mein Skript erzeugt, ist schon super so wie ich es haben will. Nur es kommt zu folgender Fehlermeldung bem Aufruf der filetype() Funktionen.
PHP-Code:
Warning: filetype() [function.filetype]: Lstat failed for ........
Kommentar