PHP使用glob函数遍历目录或文件夹的方法


Posted in PHP onDecember 16, 2014

本文实例讲述了PHP使用glob函数遍历目录或文件夹的方法。分享给大家供大家参考。具体分析如下:

一说到php遍历目录我们很多朋友会想到是opendir与readdir,这样就可以遍历目录并显示文件,但在php中有一个更简洁的遍历目录的函数glob估计很少有人知道此函数,不过我觉得比起opendir与readdir要简单多了.

PHP glob函数的使用:glob—寻找与模式匹配的文件路径.

例子,代码如下:

<?php

$fileList=glob('*.*'); 

for ($i=0; $i<count($fileList); $i++) { 

echo $fileList[$i].'<br />'; 

} 

$fileList2=glob('images/*'); 

for ($i=0; $i<count($fileList2); $i++) { 

echo $fileList2[$i].'<br />'; 

} 

$fileList3=glob('*'); 

for ($i=0; $i<count($fileList3); $i++) { 

echo $fileList3[$i].'<br />'; 

} 

?>

第一种:glob函数的参数里面是:*.* ,意思是扫描当前目录下的文件,不包括文件夹,返回的是一个数组,以下二种情况一样.

第二种:glob函数的参数里面是:images/*,是指定目录扫描所有的文件,包括文件夹,也可以扫描指定的文件类型,如:images/*.jpg;注意,如果只输入:images只会返回该文件夹名称,如果只输入:images/则什么也不会返回.

第三种:glob函数的参数里面是:*,可以扫描出当前目录下的所有文件、目录及子目录的文件.

好我们再看看opendir与readdir遍历目录,代码如下:

<?php 

/********************** 

一个简单的目录递归函数 

第一种实现办法:用dir返回对象 

***********************/ 

function tree($directory)  

{  

$mydir = dir($directory);  

echo "<ul>\n";  

while($file = $mydir->read()) 

{  

if((is_dir("$directory/$file")) AND ($file!=".") AND ($file!=".."))  

{ 

echo "<li><font color=\"#ff00cc\"><b>$file</b></font></li>\n";  

tree("$directory/$file");  

}  

else  

echo "<li>$file</li>\n";  

}  

echo "</ul>\n";  

$mydir->close();  

}  

//开始运行 

echo "<h2>目录为粉红色</h2><br>\n";  

tree("./nowamagic"); 

/*********************** 

第二种实现办法:用readdir()函数 

************************/ 

function listDir($dir) 

{ 

if(is_dir($dir)) 

   { 

if ($dh = opendir($dir))  

{ 

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

{ 

if((is_dir($dir."/".$file)) && $file!="." && $file!="..") 

{ 

echo "<b><font color='red'>文件名:</font></b>",$file,"<br><hr>"; 

listDir($dir."/".$file."/");

} 

else 

{ 

if($file!="." && $file!="..") 

{ 

echo $file."<br>"; 

 } 

} 

   } 

   closedir($dh); 

} 

   } 

} 

//开始运行 

listDir("./nowamagic"); 

?>

好了大家都看到子glob与opendir与readdir遍历输入的写法了,从代码简洁上来说glob是完胜了opendir与readdir,在功能实现上达到的是相同的效果,所以推荐使用glob函数遍历目录吧。

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

PHP 相关文章推荐
最小化数据传输――在客户端存储数据
Oct 09 PHP
PHP删除数组中的特定元素的代码
Jun 28 PHP
PHP获取http请求的头信息实现步骤
Dec 16 PHP
关于PHP的curl开启问题探讨
Apr 08 PHP
Thinkphp的volist标签嵌套循环使用教程
Jul 08 PHP
PHP简单获取视频预览图的方法
Mar 12 PHP
PHP的Yii框架中使用数据库的配置和SQL操作实例教程
Mar 17 PHP
完美解决phpdoc导出文档中@package的warning及Error的错误
May 17 PHP
php版微信自动获取收货地址api用法示例
Sep 22 PHP
PHP实现的简单AES加密解密算法实例
May 29 PHP
thinkphp框架使用JWTtoken的方法详解
Oct 10 PHP
PHP实现新型冠状病毒疫情实时图的实例
Feb 04 PHP
php批量添加数据与批量更新数据的实现方法
Dec 16 #PHP
php中get_meta_tags()、CURL与user-agent用法分析
Dec 16 #PHP
PHP使用array_multisort对多个数组或多维数组进行排序
Dec 16 #PHP
php使用ereg验证文件上传的方法
Dec 16 #PHP
PHP使用pcntl_fork实现多进程下载图片的方法
Dec 16 #PHP
php中最简单的字符串匹配算法
Dec 16 #PHP
PHP实现将科学计数法转换为原始数字字符串的方法
Dec 16 #PHP
You might like
PHP脚本的10个技巧(3)
2006/10/09 PHP
PHP中PDO基础教程 入门级
2011/09/04 PHP
php通过正则表达式记取数据来读取xml的方法
2015/03/09 PHP
php实现简单的语法高亮函数实例分析
2015/04/27 PHP
教你在PHPStorm中配置Xdebug
2015/07/27 PHP
PHP正则获取页面所有图片地址
2016/03/23 PHP
node.js超时timeout详解
2014/11/26 Javascript
node.js中的querystring.unescape方法使用说明
2014/12/10 Javascript
js选项卡的实现方法
2015/02/09 Javascript
实用又漂亮的BootstrapValidator表单验证插件
2016/05/30 Javascript
AngularJS ng-controller 指令简单实例
2016/08/01 Javascript
浅谈jQuery中的checkbox问题
2016/08/10 Javascript
浅谈JavaScript 数据属性和访问器属性
2016/09/01 Javascript
基于vue-cli 打包时抽离项目相关配置文件详解
2018/03/07 Javascript
vue实现a标签点击高亮方法
2018/03/17 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
微信小程序实现文件、图片上传功能
2020/08/18 Javascript
微信小程序mpvue点击按钮获取button值的方法
2019/05/29 Javascript
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
vue学习笔记之slot插槽基本用法实例分析
2020/02/01 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
2020/12/11 Vue.js
python文件操作整理汇总
2014/10/21 Python
python 检查是否为中文字符串的方法
2018/12/28 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
python实现学生管理系统开发
2020/07/24 Python
python实现图片转字符画的完整代码
2021/02/21 Python
HTML5 Video标签的属性、方法和事件汇总介绍
2015/04/24 HTML / CSS
HTML5中外部浏览器唤起微信分享
2020/01/02 HTML / CSS
Room Mate Hotels美国:西班牙酒店品牌
2018/04/10 全球购物
美国在线和移动免费会员制批发零售商:Boxed(移动端的Costco)
2020/01/02 全球购物
幼儿园教师请假制度
2014/01/16 职场文书
列车长先进事迹材料
2014/01/25 职场文书
施工安全承诺书
2014/05/22 职场文书
建筑工程技术专业求职信
2014/07/16 职场文书
2014年销售工作总结与计划
2014/12/01 职场文书
先进个人自荐书
2015/03/06 职场文书