博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php glob()函数实现目录文件遍历与寻找与模式匹配的文件路径
阅读量:4510 次
发布时间:2019-06-08

本文共 1328 字,大约阅读时间需要 4 分钟。

采用PHP函数glob实现寻找与模式匹配的文件路径,主要讨论glob()函数的作用和用法,利用glob函数读取目录比其它的要快N倍,因为glob函数是内置函数处理起来自然要快。

一,函数原型

array glob ( string pattern [, int flags] )

注意:glob()函数获取的是一个数组,其返回一个包含有匹配文件/目录的数组。如果出错返回FALSE

二,版本兼容

PHP 4 >= 4.3.0, PHP 5

三,函数的基础用法与实例

1,匹配目录下.txt后缀的文件

2,实现兼容大小写匹配

类似如下

3,获取目录下的所有子目录

0) { foreach ($dirs as $d) $alldirs[] = $d; } foreach ($dirs as $dir) listdirs($dir); return $alldirs; } ?>

4,匹配所有文件

四,注意事项

1,不能作用于远程文件,被检查的文件必须通过服务器的文件系统访问。

2,使用 glob("[myfolder]/*.txt")将不能匹配,解决方法为 glob("[myfolder]/*.txt"),注意[]字符应用。

3,其次是第二个参数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 4.3.3 版本之前 GLOB_ONLYDIR 在 Windows 或者其它不使用 GNU C 库的系统上不可用。

(7)GLOB_ERR - 停止并读取错误信息(比如说不可读的目录),默认的情况下忽略所有错误 注意: GLOB_ERR 是 PHP 5.1 添加的。

glob()函数的典型应用是读取数据表文件,如获取某个目录下的.sql后缀文件,这种在单元测试中非常实用,可实现读取sql文件重建数据库等,具体请参与PHP手册。

其它参考:

例子 1

输出类似:

Array([0] => target.txt[1] => source.txt[2] => test.txt[3] => test2.txt)

例子 2

输出类似:

Array([0] => contacts.csv[1] => default.php[2] => target.txt[3] => source.txt[4] => tem1.tmp[5] => test.htm[6] => test.ini[7] => test.php[8] => test.txt[9] => test2.txt)

转载于:https://www.cnblogs.com/52php/p/5665447.html

你可能感兴趣的文章
nhibernate学习之集合组合依赖
查看>>
系列文章索引
查看>>
绝对震撼 7款HTML5动画应用及源码
查看>>
Objective-C runtime之消息转发机制(三)
查看>>
ios里的KVO模式
查看>>
Xcode Instrument工具 内存泄露
查看>>
使用Python的requests模块编写请求脚本
查看>>
ERP 高级查询(Advanced Query)设计与实现 SQL语句解析成LLBL Gen ORM代码
查看>>
gfs下载文件较大,可以分区域分变量下载
查看>>
用 Mahout 和 Elasticsearch 实现推荐系统
查看>>
预装windows7 C盘只能分出一半空间的解决办法
查看>>
MySql绿色库(无需安装) 可以由打包工具直接打包
查看>>
理解HTTP幂等性,分布式事物
查看>>
luogu4219 and bzoj4530 大融合
查看>>
python安装setup.py问题
查看>>
【算法03】n个骰子的总和
查看>>
(剑指Offer)面试题3:二维数组中的查找
查看>>
layer的简单使用
查看>>
命名空间
查看>>
JS禁止右键,禁止Ctrl键,禁止选中文字
查看>>