php使用glob函数遍历文件和目录详解


Posted in PHP onSeptember 23, 2016

php glob()函数返回匹配指定模式的文件名或目录。因此我们可以使用glob函数来查找文件,也可以实现目录的遍历。

函数说明:array glob ( string $pattern [, int $flags ] )

功能:寻找与模式匹配的文件路径,返回包含匹配文件(目录)的数组(注:被检查的文件必须是服务器系统的,不能用于远程文件)

参数说明:第一个参数:匹配模式;第二个可选参数:

  1. GLOB_MARK - 在每个返回的项目中加一个斜线
  2. GLOB_NOSORT - 按照文件在目录中出现的原始顺序返回(不排序)
  3. GLOB_NOCHECK - 如果没有文件匹配则返回用于搜索的模式
  4. GLOB_NOESCAPE - 反斜线不转义元字符
  5. GLOB_BRACE - 扩充 {a,b,c} 来匹配 'a','b' 或 'c'
  6. GLOB_ONLYDIR - 仅返回与模式匹配的目录项  

实例一:获取指定目录下的所有文件和子目录

<?php
   $directories = glob("/tmp/*", GLOB_ONLYDIR);//获取/tmp/目录下的所有目录
   $complete = glob("/tmp/*");//获取/tmp/目录下的所有目录和文件
   $files = array_diff($directories, $complete);//获取/tmp/目录下的所有文件

   echo "Directories in /tmp/<BR>";
   foreach($directories as $val) {
     echo "$val<BR>\n";
   }
   echo "<BR>Files in /tmp/<BR>";
   foreach($files as $val) {
     echo "$val<BR>\n";
   }
?>

实例二:你还在用opendir readdir遍历文件吗,你真out了!

<?php
$files = glob("dir/*.jpg");
foreach($files as $jpg){
  echo $jpg, "\n";
}
?>

以上就是对php使用glob函数遍历文件和目录的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

PHP 相关文章推荐
[FAQ]PHP中的一些常识:类篇
Oct 09 PHP
使用PHP数组实现无限分类,不使用数据库,不使用递归.
Dec 09 PHP
Session保存到数据库的php类分享
Oct 24 PHP
php仿微信红包分配算法的实现方法
May 13 PHP
PHP中抽象类和抽象方法概念与用法分析
May 24 PHP
详解PHP中websocket的使用方法
Sep 15 PHP
基于ThinkPHP实现的日历功能实例详解
Apr 15 PHP
深入理解PHP的远程多会话调试
Sep 21 PHP
PHP上传文件及图片到七牛的方法
Jul 25 PHP
php用户名的密码加密更安全的方法
Jun 21 PHP
php弹出提示框的是实例写法
Sep 26 PHP
PHPExcel实现的读取多工作表操作示例
Apr 14 PHP
php版微信发红包接口用法示例
Sep 23 #PHP
基于thinkPHP实现的微信自定义分享功能示例
Sep 23 #PHP
php版微信自动登录并获取昵称的方法
Sep 23 #PHP
php中使用websocket详解
Sep 23 #PHP
PHP用FTP类上传文件视频等的简单实现方法
Sep 23 #PHP
php使用ftp远程上传文件类(完美解决主从文件同步问题的方法)
Sep 23 #PHP
thinkphp制作404跳转页的简单实现方法
Sep 22 #PHP
You might like
php强制用户转向www域名的方法
2015/06/19 PHP
仿迅雷焦点广告效果(JQuery版)
2008/11/19 Javascript
dojo学习第二天 ajax异步请求之绑定列表
2011/08/29 Javascript
javascript设置连续两次点击按钮时间间隔的方法
2014/10/28 Javascript
jQuery 和 CSS 的文本特效插件集锦
2014/12/12 Javascript
director.js实现前端路由使用实例
2015/02/03 Javascript
JS中完美兼容各大浏览器的scrolltop方法
2015/04/17 Javascript
jQuery横向擦除焦点图特效代码分享
2015/09/06 Javascript
js实现兼容IE、Firefox的图片缩放代码
2015/12/08 Javascript
JS二叉树的简单实现方法示例
2017/04/05 Javascript
使用Math.max,Math.min获取数组中的最值实例
2017/04/25 Javascript
利用express启动一个server服务的方法
2017/09/17 Javascript
React Native中导航组件react-navigation跨tab路由处理详解
2017/10/31 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
vuex state及mapState的基础用法详解
2018/04/19 Javascript
vue-cli脚手架搭建的项目去除eslint验证的方法
2018/09/29 Javascript
基于JS实现视频上传显示进度条
2020/05/12 Javascript
nuxt 自定义 auth 中间件实现令牌的持久化操作
2020/11/05 Javascript
python基础教程之python消息摘要算法使用示例
2014/02/10 Python
python添加模块搜索路径方法
2017/09/11 Python
pandas的唯一值、值计数以及成员资格的示例
2018/07/25 Python
Python封装原理与实现方法详解
2018/08/28 Python
使用python3构建文件传输的方法
2019/02/13 Python
Python如何爬取实时变化的WebSocket数据的方法
2019/03/09 Python
Django --Xadmin 判断登录者身份实例
2020/07/03 Python
Python基于locals返回作用域字典
2020/10/17 Python
Python3自带工具2to3.py 转换 Python2.x 代码到Python3的操作
2021/03/03 Python
国外平面设计素材网站:The Hungry JPEG
2017/03/28 全球购物
FitFlop美国官网:英国符合人体工学的鞋类品牌
2018/10/05 全球购物
一些Unix笔试题和面试题
2012/09/25 面试题
计算机专业毕业生自荐信范文
2014/03/06 职场文书
连带责任保证书
2014/04/29 职场文书
2015年“七七卢沟桥事变”纪念活动总结
2015/03/24 职场文书
2015年电厂工作总结范文
2015/05/13 职场文书
初三毕业感言
2015/07/31 职场文书
golang 接口嵌套实现复用的操作
2021/04/29 Golang