介绍
今天就跟大家聊聊有关利用PHP怎么对指定文件夹内的文件进行递归遍历,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
目录名()根据提供的完整文件路径来取得文件所在的文件夹的路径,但如果你传入的是文件夹,它取的就是它的父文件夹。这点要明白.basename()也是同样的道理,传入文件夹路径取得就是文件夹的名字。这两个函数返回的结果结尾都不加& # 39;/& # 39;
& lt; PHP ? dirPath=& # 39;美元/home/WWW/测试# 39;;//目录,结尾不加& # 39;/'//执行遍历 recursion_readdir ($ dirPath);/* * * @summary 重复倍次字符字符 * @param char 美元;需要重复的字符 * @param times 美元;重复次数 * @return 返回重复字符组成的字符串 */function forChar($字符=& # 39;& # 39;,$ *=0){ 美元才能结果=& # 39;& # 39;; ,,(i=0; i<美元;$次;美元我+ +){ ,,,的结果。美元=$字符; ,,} return 才能;美元的结果; }/* * * @summary ,递归读取目录 * @param dirPath 美元;目录 * @param 深=0美元,深度,用于缩进,无需手动设置 * @return 无 */function recursion_readdir (dirPath,深=0美元){ ,$ resDir=opendir ($ dirPath); ,而($ basename=readdir (resDir美元)){ ,,//当前文件路径=$ $ path,才能dirPath强生# 39;/& # 39;:美元; ,,如果(is_dir(路径)美元,以及美元basename !=& # 39; # 39;公司,以及美元basename !=& # 39; . . & # 39;) { ,,,//是目录,打印目录名,继续迭代 ,,,echo forChar(& # 39; & # 39;,深)美元。basename强生# 39;美元/& lt; br/祝辞& # 39;; ,,,深+ +美元;//深度+ 1 ,,,recursion_readdir(路径,深美元); ,,}else 如果(basename(路径)美元!=& # 39;# 39;公司,以及basename(路径)美元!=& # 39;. . & # 39;){ ,,,,//不是文件夹,打印文件名 ,,,,echo forChar(& # 39; & # 39;,深)美元.basename(路径)美元强生# 39;& lt; br/祝辞& # 39;; ,,} ,} ,closedir ($ resDir); }
看完上述内容,你们对利用PHP怎么对指定文件夹内的文件进行递归遍历有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。