PHP利用一行代码删除目录下所有文件方法示例
author:一佰互联 2019-04-25   click:174

前言

想必很多人都会写几行甚至几十行代码使其列出所有文件变为数组进行删除,但是glob函数分分钟解决问题!下面来一起看看详细的介绍吧。

glob语法说明:

array glob ( string $pattern [, int $flags = 0 ] )

glob() 函数依照 libc glob() 函数使用的规则寻找所有与 pattern 匹配的文件路径,类似于一般 shells 所用的规则一样。不进行缩写扩展或参数替代。glob使用正则匹配路径功能强大。

flags 有效标记有:

  • GLOB_MARK - 在每个返回的项目中加一个斜线
  • GLOB_NOSORT - 按照文件在目录中出现的原始顺序返回(不排序)
  • GLOB_NOCHECK - 如果没有文件匹配则返回用于搜索的模式
  • GLOB_NOESCAPE - 反斜线不转义元字符
  • GLOB_BRACE - 扩充 {a,b,c} 来匹配 ‘a","b" 或 ‘c"
  • GLOB_ONLYDIR - 仅返回与模式匹配的目录项
  • GLOB_ERR - 停止并读取错误信息(比如说不可读的目录),默认的情况下忽略所有错误

例子 1

<?phpprint_r(glob("*.txt"));?>

输出类似:

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

例子 2

<?phpprint_r(glob("*.*"));?>

输出类似:

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)

删除目录下所有文件

array_map("unlink", glob("*"));

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对网页设计的支持。