PHP递归遍历文件夹

function get_files($dir) {

$files = array();

if(!is_dir($dir)) {

return $files;

}

$handle = opendir($dir);

if($handle) {

while(false !== ($file = readdir($handle))) {

if ($file != ‘.‘ && $file != ‘..‘) {

$filename = $dir . "/"  . $file;

if(is_file($filename)) {

$files[] = $filename;

}else {

$files = array_merge($files, get_files($filename));

}

}

}   //  end while

closedir($handle);

}

return $files;

}

$files = get_files("Lee");

var_dump($files);

时间: 2024-10-14 23:31:28

PHP递归遍历文件夹的相关文章

[C#]递归遍历文件夹

// <summary> /// 递归获取文件夹目录下文件 /// </summary> /// <param name="pathName">需要递归遍历的文件夹</param> /// <param name="fileRule">遍历规则『委托』</param> public static void LoopFolder(string pathName, Action<FileInf

linux文件夹操作及递归遍历文件夹

文件夹相关函数介绍 //mkdir 函数创建文件夹 #include <sys/stat.h> #include <sys/types.h> int mkdir(const char *pathname, mode_t mode); //rmdir 删除文件夹 #include <unistd.h> int rmdir(const char *pathname); //dopendir/fdopendir  //打开文件夹 DIR是一个结构体,是一个内部结构,用来存储读

java File基本操作,以及递归遍历文件夹

java 的文件操作,相对来说是比较重要的,无论是编写CS还是BS程序,都避免不了要与文件打交道,例如读写配置文件等.虽然现在很多框架都直接帮你做好了这一步! java.io.File 底层是调用与c语言接的接口,所以我们暂时不需要知道底层是怎么实现的,再说了,也看不见,最多就是看见一个接口而已.我们只需要知道java.io.File提供给我们对文件的一些操作就行了. 1.文件的创建 :java的文件创建可以直接通过new一个对象来实现. File file = new File(String

递归遍历文件夹中的文件

package util; import java.io.File; import java.util.ArrayList; import entity.FileOfDown; public class FileUtil { public static ArrayList<File> getFiles(String absolutePath){ return new FileList(absolutePath).fileList ; } /** * * 功能: 实现遍历指定绝对路径下的所有文件

递归遍历文件夹、取所有文件。包括子目录。

private int count = 0; private int TransformFiles(string path) { DirectoryInfo dir = new DirectoryInfo(path); DirectoryInfo[] dirs = dir.GetDirectories(); //获取子目录 FileInfo[] files = dir.GetFiles("*.*"); //获取文件名 List<string> list = new List

Java递归遍历文件夹

import java.io.File; public class Test { /** * @param args * @author itmyhome */ public static void main(String[] args) { File f = new File("F:/javaAPI/JavaAPI1.6/java/awt"); printFile(f, 0); } public static void printFile(File f, int len) { Str

windows API递归遍历文件夹下所有文件

1.网上有些代码有问题,改进如下 #include <stdio.h> #include<windows.h> #include<iostream> #include<string> using namespace std; int count = 0; void find(char * lpPath) { char save_path[200]; char szFile[MAX_PATH] = {0}; char szFind[MAX_PATH]; cha

PHP递归和非递归遍历文件夹下文件

function readDirFiles($dir){ $files= []; $queue=[realpath($dir)]; $currentPath = current($queue); while($currentPath) { $path = $currentPath; if (is_dir($path) && $handle = opendir($path)) { while ($file = readdir($handle)) { if ($file == '.' || $

SHELL递归遍历文件夹下所有文件

#!/bin/bash read_dir(){ for file in `ls -a $1` do if [ -d $1"/"$file ] then if [[ $file != '.' && $file != '..' ]] then read_dir $1"/"$file fi else echo $1"/"$file fi done } #测试目录 test read_dir test 原文地址:https://www.c