php读取目录及子目录下所有文件名的方法


Posted in PHP onOctober 20, 2014

本文实例讲述了php读取目录及子目录下所有文件名的方法,分享给大家供大家参考。具体实现方法如下:

一般来说php中读取目录下的文件名的方式确实不少,最简单的是scandir,具体代码如下:

$dir="./caxa/";

$file=scandir($dir);

print_r($file);

稍微复杂点的,来自于php手册:

$dir = "/etc/php5/";

// Open a known directory, and proceed to read its contents

if (is_dir($dir)) {

if ($dh = opendir($dir)) {

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

echo "filename: $file : filetype: " . filetype($dir . $file) . "\n";

} closedir($dh);

}

}

这些都只能读取当前指定目录下的文件,对子目录中的文件则无法读取。原来自己写过一个循环删除所有目录的一段代码,需要逐个子目录删除所有文件,包括多层。但是只需要读出文件名,稍微复杂点,网上找到一个能用,原始代码有错误提示,改了一下引用&$data的地方,如下所示:

function searchDir($path,&$data){

if(is_dir($path)){

$dp=dir($path);

while($file=$dp->read()){

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

searchDir($path.'/'.$file,$data);

}

}

$dp->close();

}

if(is_file($path)){

$data[]=$path;

}

}
function getDir($dir){

$data=array();

searchDir($dir,$data);

return   $data;

}
print_r(getDir('.'));

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
Search Engine Friendly的URL设计
Oct 09 PHP
php smarty模版引擎中的缓存应用
Dec 11 PHP
yii框架通过控制台命令创建定时任务示例
Apr 30 PHP
php自定义apk安装包实例
Oct 20 PHP
php中使用session防止用户非法登录后台的方法
Jan 27 PHP
php使用Jpgraph绘制简单X-Y坐标图的方法
Jun 10 PHP
JSON两种结构之对象和数组的理解
Jul 19 PHP
php+ajax无刷新上传图片的实现方法
Dec 06 PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
Jun 06 PHP
PHP面向对象程序设计之多态性的应用示例
Dec 19 PHP
php+lottery.js实现九宫格抽奖功能
Jul 21 PHP
Cookie跨域问题解决方案代码示例
Nov 24 PHP
php中的字符编码转换函数用法示例
Oct 20 #PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
Oct 20 #PHP
php的ZipArchive类用法实例
Oct 20 #PHP
php自定义apk安装包实例
Oct 20 #PHP
php防止站外远程提交表单的方法
Oct 20 #PHP
php获取textarea的值并处理回车换行的方法
Oct 20 #PHP
php实现给图片加灰色半透明效果的方法
Oct 20 #PHP
You might like
重置版游戏视频
2020/04/09 魔兽争霸
php之curl实现http与https请求的方法
2014/10/21 PHP
CodeIgniter配置之config.php用法实例分析
2016/01/19 PHP
Laravel中encrypt和decrypt的实现方法
2017/09/24 PHP
PHP PDOStatement::rowCount讲解
2019/02/01 PHP
基于jquery的滚动鼠标放大缩小图片效果
2011/10/27 Javascript
jQuery实现密保互斥问题解决方案
2013/08/16 Javascript
Javascript排序算法之计数排序的实例
2014/04/05 Javascript
JavaScript使用setTimeout实现延迟弹出警告框的方法
2015/04/07 Javascript
用Node.js通过sitemap.xml批量抓取美女图片
2015/05/28 Javascript
js与jquery正则验证电子邮箱、手机号、邮政编码的方法
2016/07/04 Javascript
深入理解node.js之path模块
2017/05/03 Javascript
Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结
2019/02/11 Javascript
Webpack 4如何动态切割JS注入文件名详解
2019/07/09 Javascript
js 闭包深入理解与实例分析
2020/03/19 Javascript
[01:08]DOTA2“血战之命”预告片
2017/08/12 DOTA
Python字符串详细介绍
2015/05/09 Python
详谈python read readline readlines的区别
2017/09/22 Python
python 二分查找和快速排序实例详解
2017/10/13 Python
Python实现查看系统启动项功能示例
2018/05/10 Python
使用python将大量数据导出到Excel中的小技巧分享
2018/06/14 Python
用Python实现读写锁的示例代码
2018/11/05 Python
python 自动轨迹绘制的实例代码
2019/07/05 Python
Python队列、进程间通信、线程案例
2019/10/25 Python
opencv resize图片为正方形尺寸的实现方法
2019/12/26 Python
Python搭建Keras CNN模型破解网站验证码的实现
2020/04/07 Python
利用OpenCV中对图像数据进行64F和8U转换的方式
2020/06/03 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
为什么要做架构设计
2015/07/08 面试题
采购人员的个人自我评价
2014/01/16 职场文书
文明教师事迹材料
2014/01/16 职场文书
市级青年文明号申报材料
2014/05/26 职场文书
党建工作目标管理责任书
2015/01/29 职场文书
亮剑观后感
2015/06/05 职场文书
Python中文分词库jieba(结巴分词)详细使用介绍
2022/04/07 Python
阿里云 Windows server 2019 配置FTP
2022/04/28 Servers