From c1e23ce329575d2777dc1c87b87c4b1171c4e18b Mon Sep 17 00:00:00 2001 From: admin Date: Mon, 23 Oct 2006 20:49:27 +0000 Subject: --- system/database/DB_driver.php | 2 -- system/helpers/directory_helper.php | 6 ++---- system/helpers/file_helper.php | 34 ++++++++++++++++++++++++++++++++++ 3 files changed, 36 insertions(+), 6 deletions(-) (limited to 'system') diff --git a/system/database/DB_driver.php b/system/database/DB_driver.php index 61f0d307f..139dbf7db 100644 --- a/system/database/DB_driver.php +++ b/system/database/DB_driver.php @@ -596,8 +596,6 @@ class CI_DB_driver { return $str; } - - // -------------------------------------------------------------------- /** diff --git a/system/helpers/directory_helper.php b/system/helpers/directory_helper.php index e6ed47fd8..ad868519d 100644 --- a/system/helpers/directory_helper.php +++ b/system/helpers/directory_helper.php @@ -40,12 +40,10 @@ * @return array */ function directory_map($source_dir, $top_level_only = FALSE) -{ - if ( ! isset($filedata)) - $filedata = array(); - +{ if ($fp = @opendir($source_dir)) { + $filedata = array(); while (FALSE !== ($file = readdir($fp))) { if (@is_dir($source_dir.$file) && substr($file, 0, 1) != '.' AND $top_level_only == FALSE) diff --git a/system/helpers/file_helper.php b/system/helpers/file_helper.php index c9c21380d..4da62ade6 100644 --- a/system/helpers/file_helper.php +++ b/system/helpers/file_helper.php @@ -141,5 +141,39 @@ function delete_files($path, $del_dir = FALSE, $level = 0) } } +// ------------------------------------------------------------------------ + +/** + * Get Filenames + * + * Reads the specified directory and builds an array containing the filenames. + * Any sub-folders contained within the specified path are read as well. + * + * @access public + * @param string path to source + * @param bool whether to include the path as part of the filename + * @return array + */ +function get_filenames($source_dir, $include_path = FALSE) +{ + static $_filedata = array(); + + if ($fp = @opendir($source_dir)) + { + while (FALSE !== ($file = readdir($fp))) + { + if (@is_dir($source_dir.$file) && substr($file, 0, 1) != '.') + { + get_filenames($source_dir.$file."/", $include_path); + } + elseif (substr($file, 0, 1) != ".") + { + + $_filedata[] = ($include_path == TRUE) ? $source_dir.$file : $file; + } + } + return $_filedata; + } +} ?> \ No newline at end of file -- cgit v1.2.3-24-g4f1b