基于ThinkPHP删除目录及目录文件函数


Posted in PHP onOctober 28, 2020

1、删除目录及目录下所有的文件

2、删除目录下的所有文件但目录结构保留

3、删除指定文件

代码如下

/**
 +-----------------------------------------------------------------------------------------
 * 删除目录及目录下所有文件或删除指定文件
 +-----------------------------------------------------------------------------------------
 * @param str $path  待删除目录路径
 * @param int $delDir 是否删除目录,1或true删除目录,0或false则只删除文件保留目录(包含子目录)
 +-----------------------------------------------------------------------------------------
 * @return bool 返回删除状态
 +-----------------------------------------------------------------------------------------
 */
function delDirAndFile($path, $delDir = FALSE) {
  if (is_array($path)) {
    foreach ($path as $subPath)
      delDirAndFile($subPath, $delDir);
  }
  if (is_dir($path)) {
    $handle = opendir($path);
    if ($handle) {
      while (false !== ( $item = readdir($handle) )) {
        if ($item != "." && $item != "..")
          is_dir("$path/$item") ? delDirAndFile("$path/$item", $delDir) : unlink("$path/$item");
      }
      closedir($handle);
      if ($delDir)
        return rmdir($path);
    }
  } else {
    if (file_exists($path)) {
      return unlink($path);
    } else {
      return FALSE;
    }
  }
  clearstatcache();
}

这个函数和unlink有什么不一样?如果知道要删除的是一个文件可以直接使用unlink函数,如果不知道要删除的是一个文件还是文件件就可以使用上面的函数

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
Adodb的十个实例(清晰版)
Dec 31 PHP
php下将图片以二进制存入mysql数据库中并显示的实现代码
May 27 PHP
PHP中的错误处理、异常处理机制分析
May 07 PHP
ThinkPHP调用百度翻译类实现在线翻译
Jun 26 PHP
php合并数组中相同元素的方法
Nov 13 PHP
php实现的操作excel类详解
Jan 15 PHP
Smarty模板变量调节器用法分析
May 23 PHP
php 文件下载 出现下载文件内容乱码损坏的解决方法(推荐)
Nov 16 PHP
thinkPHP数据库增删改查操作方法实例详解
Dec 06 PHP
PHP Primary script unknown 解决方法总结
Aug 22 PHP
使用laravel指定日志文件记录任意日志
Oct 17 PHP
php如何获取Http请求
Apr 30 PHP
PHP tp5中使用原生sql查询代码实例
Oct 28 #PHP
PHP dirname(__FILE__)原理及用法解析
Oct 28 #PHP
ThinkPHP 5 AJAX跨域请求头设置实现过程解析
Oct 28 #PHP
基于PHP实现邮箱验证激活过程详解
Oct 28 #PHP
THINKPHP5分页数据对象处理过程解析
Oct 28 #PHP
Laravel 自动转换长整型雪花 ID 为字符串的实现
Oct 27 #PHP
Laravel配合jwt使用的方法实例
Oct 25 #PHP
You might like
我的论坛源代码(九)
2006/10/09 PHP
PHP提取中文首字母
2008/04/09 PHP
php获取服务器信息的实现代码
2013/02/04 PHP
web站点获取用户IP的安全方法 HTTP_X_FORWARDED_FOR检验
2013/06/01 PHP
php判断是否为ajax请求的方法
2016/11/29 PHP
PHPMailer发送邮件
2016/12/28 PHP
Laravel 微信小程序后端实现用户登录的示例代码
2019/11/26 PHP
ie 调试javascript的工具
2009/04/29 Javascript
jQuery ajax BUG:object doesn't support this property or method
2010/07/06 Javascript
关于递归运算的顺序测试代码
2011/11/30 Javascript
HTML页面滚动时获取离页面顶部的距离2种实现方法
2013/09/05 Javascript
jQuery中ajax的get()方法用法实例
2014/12/26 Javascript
JS实现自动变化的导航菜单效果代码
2015/09/09 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
2015/12/03 Javascript
Google 地图事件实例讲解
2016/08/06 Javascript
javascript 实现文本使用省略号替代(超出固定高度的情况)
2017/02/21 Javascript
jquery实现表单获取短信验证码代码
2017/03/13 Javascript
vue.js与element-ui实现菜单树形结构的解决方法
2018/04/21 Javascript
说说node中的可读流和可写流的区别
2018/06/01 Javascript
js数组去重的方法总结
2019/01/18 Javascript
从零搭一个自用的前端脚手架的方法步骤
2019/09/23 Javascript
在vue中使用console.log无效的解决
2020/08/09 Javascript
[02:41]《西雅图我们来了》2015国际邀请赛出征全记录
2015/07/23 DOTA
Python爬虫实现爬取京东手机页面的图片(实例代码)
2017/11/30 Python
python数据抓取分析的示例代码(python + mongodb)
2017/12/25 Python
pandas 如何分割字符的实现方法
2019/07/29 Python
图解Python中深浅copy(通俗易懂)
2020/09/03 Python
基于python获取本地时间并转换时间戳和日期格式
2020/10/27 Python
python的scipy.stats模块中正态分布常用函数总结
2021/02/19 Python
Pytorch如何切换 cpu和gpu的使用详解
2021/03/01 Python
Madewell美德威尔美国官网:美国休闲服饰品牌
2016/11/25 全球购物
英国最大的在线奢侈手表零售商:Jura Watches
2018/01/29 全球购物
乡镇领导干部个人对照检查材料思想汇报
2014/09/23 职场文书
酒店员工管理制度
2015/08/05 职场文书
python和anaconda的区别
2022/05/06 Python
Python实现数据的序列化操作详解
2022/07/07 Python