Rekursive Funktion
Aus php bar
Definition
Eine rekursive Funktion ist eine Funktion die sich selber aufruft.
Anwendung
Rekursive Funktionen verwendet man z. B. um verschachtelte Arrays oder Verzeichnisbäume zu bearbeiten.
Beispiel: Verzeichnis
1 /** 2 * durchläuft das angegebene Verzeichnis und 3 * alle Unterverzeichnisse und gibt den Inhalt aus 4 * 5 * @param string $directory Anfangsverzeichnis 6 */ 7 function scanDir( $directory ) 8 { 9 // entfernen aller Leerzeichen am Anfang 10 // und \ bzw. / am Ende 11 $directory = trim( rtrim( $directory, " /\\" ) ); 12 echo $directory; 13 if ( is_dir( $directory ) ) 14 { 15 $dir_object = dir( $directory ); 16 while ( false !== ( $entry = $dir_object->read() ) ) 17 { 18 // '.' und '..' interessieren uns nicht 19 if ( $file !== '.' && $file !== '..' ) 20 { 21 scanDir( $directory . '/' . $entry ); 22 } 23 } 24 $dir_object->close(); 25 } 26 } 27 28 scanDir( '/www' );
Ausgabe:
/www /www/index.php /www/images /www/images/logo.jpg
Seit PHP 5 gibt es in der Standard PHP Libary (SPL) einen Directory- und RekursiveDirectoryIterator.