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

yipeiwu_com6年前PHP代码库

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 中奖概率算法实现代码

实现代码: <?php /** *php 中奖概率算法 * */ function get_zj( $jp ,$glname = 'gl'){ $sum = 0...

实现了一个PHP5的getter/setter基类的代码

PHP3、PHP4都拥有类,但它们的类定义的实在很不像样,效率还挺难为情的,但资料上说PHP5重新构造了面向对象的支持,尽管并不是完全面向对象,但也算能拿出来见人了。 昨天晚上闲着无聊便...

php cookie名使用点号(句号)会被转换

这个标题不是很严格,应该说可以使用点号的cookie名,但会被转换,你命名一个cookie: $_COOKIE[‘my.name'] = 1; 实际上你不能通过'my.name'在coo...

PHP程序61条面向对象分析设计的经验小结

(1)所有数据都应该隐藏在所在的类的内部。 (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。 (3)尽量减少类的协议中的消息。 (4)实现所有类都理解的最基本公有接口[例如...

PHP socket 模拟POST 请求实例代码

我们用到最多的模拟POST请求几乎都是使用php curl来实现了,没考虑到PHP socket也可以实现,今天看到朋友写了一文章,下面我来给大家分享一下PHP socket模拟POST...