rekursive Funktion array-Eintrag wird nicht angefügt

vcr

Grünschnabel
Hy!

Ich schreibe gerade eine rekursive Funktion, die Ordnerstrukturen nach Dateinamen durchsuchen soll. Soweit geht das auch, aber es wird dem Array kein Eintrag angefügt, weiß jemand woran das liegt?

PHP:
function don3_search_files($haystack, $needle){
	$folder = array();
	$needle2 = strtolower($needle);
	
	$handle = opendir($haystack);
	while ($file = readdir($handle)) {
		
		$folder2 = $haystack.$file."/";
		if ($file != "." and $file != ".."){
			if (is_dir($folder2)){
				echo "ORDNER <br />";
				don3_search_files($folder2, $needle2);
			} else {
				$path_parts = pathinfo($folder2);
				$filename = strtolower($path_parts["filename"]);
				echo "DATEI ($filename)";
				if (ereg($needle2, $filename)){
					echo "GEFUNDEN <br />";
					$folder[] = $folder2;
				} else {
					echo "<br />";
				}
			}
		}
		
	}
	
	closedir($handle);
	
	return $folder;
}

Wenn ihr sonst noch irgendwelche Fehler findet, wärs super, wenns das meldets!

Danke!!
 
Gibt es denn überhaupt Übereinstimmungen, wird also mal „GEFUNDEN“ ausgegeben?
 
Du verarbeitest den Rückgabewert der Rekursion nicht.
PHP:
$folder = array_merge($folder, don3_search_files($folder2, $needle2));
 
Zurück