PHP7中文手册2018 带注释 最新chm版
function php_file_tree($directory, $return_link, $extensions = array()) { // Generates a valid XHTML list of all directories, sub-directories, and files in $directory // Remove trailing slash if( substr($directory, -1) == "/" ) $directory = substr($directory, 0, strlen($directory) - 1); $code .= php_file_tree_dir($directory, $return_link, $extensions); return $code; } function php_file_tree_dir($directory, $return_link, $extensions = array(), $first_call = true) { // Recursive function called by php_file_tree() to list directories/files // Get and sort directories/files if( function_exists("scandir") ) $file = scandir($directory); else $file = php4_scandir($directory); natcasesort($file); // Make directories first $files = $dirs = array(); foreach($file as $this_file) { if( is_dir("$directory/$this_file" ) ) $dirs[] = $this_file; else $files[] = $this_file; } $file = array_merge($dirs, $files); // Filter unwanted extensions if( !empty($extensions) ) { foreach( array_keys($file) as $key ) { if( !is_dir("$directory/$file[$key]") ) { $ext = substr($file[$key], strrpos($file[$key], ".") + 1); if( !in_array($ext, $extensions) ) unset($file[$key]); } } } if( count($file) > 2 ) { // Use 2 instead of 0 to account for . and .. "directories" $php_file_tree = "
- " . htmlspecialchars($this_file) . "";
$php_file_tree .= php_file_tree_dir("$directory/$this_file", $return_link ,$extensions, false);
$php_file_tree .= "
转载请注明:谷谷点程序 » php文件树 遍历文件夹的源码下载