34.204.169.76 |    

Navigation

Google Advertisement

Die Funktion listing() durchsucht ein definiertes Verzeichnis nach Dateien/Verzeichnisse und speichert alle Dateien im Array $file und alle Verzeichnisse im Array $dir. Mann kann die Suche durch einen Regulären Ausdruck filtern. Wird der letzte Parameter auf True gesetzt, werden auch Versteckte Dateien/Verzeichnisse aufgelistet. Es werden zwei Arrays ($dir, $file) sortiert zurück gegeben.

listing
  1. /**
  2.  * This function open a defined directory and read all file into an array $file
  3.  * and all directory into an array $dirs. You can filter the search by
  4.  * regular expression. To hide hidden files/directories, set the last parameter as True.
  5.  * 
  6.  * @param string $dir
  7.  * @param string $filter
  8.  * @param bool $hidden
  9.  * @return array
  10.  *
  11.  * @example list ( $directorys, $files ) = listing( '.', '/(\\.jpg|\\.png)$/i', True );
  12.  */
  13. function listing ( $dir, $filter = NULL, $hidden = False ) {
  14.  
  15. // remove dubble slashes
  16. (string) $dir = preg_replace( '/\/{2,}/', '/', $dir );
  17.  
  18. if ( ( $dh = @/**/opendir( $dir ) ) !== False ) {
  19. 	while ( false !== ( $file = readdir( $dh ) ) ) {
  20. 		if ( $file != "." && $file != ".." ) {
  21. 			// Go next if $hidden True on hidden files.
  22. 			if ( preg_match( '/^\./', $file ) && $hidden === True ) continue;
  23.  
  24. 			if ( $filter && preg_match( $filter, $file ) ) $files[] = $file;
  25. 			else {
  26. 				// Store files in Array $files[] and directorys in Array $dirs[].
  27. 				if ( !$filter && is_file( $dir."/".$file ) ) $files[] = $file;
  28. 				elseif ( !$filter && is_dir( $dir."/".$file ) ) $dirs[] = $file;
  29. 			}
  30. 		}
  31. 	}
  32. 	if ( @/**/closedir( $dh ) === False )
  33. 		die("Can't close directory \"".$dir."\"!");
  34. } else die("Can't open directory \"".$dir."\"!");
  35.  
  36. // Sort the entry's naturaly.
  37. if ( count($dirs) > 0  ) natcasesort($dirs);
  38. if ( count($files) > 0 ) natcasesort($files);
  39. return array( $dirs, $files );
  40.  
  41. }
Parsed in 0.016 seconds at 89.40 KB/s

Search
 
Full text search by name and content of a snippet.

User online
There are 3 users online.

Tags Cloud

Latest snippets
last day of last month
(Bash::Snippets)
crypt_apr1_md5
(PHP::Function)
crypt_apr1_md5
(Perl::Function)
transparent
(CSS)
rfc2822Toiso8601
(PHP::Function)
STDERR
(Bash::Function)
radius
(CSS)
shadow
(CSS)
rotate
(CSS)
create_function
(JavaScript::Snippets)