基于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 相关文章推荐
mysql5写入和读出乱码解决
Nov 25 PHP
分页详解 从此分页无忧(PHP+mysql)
Nov 23 PHP
php trim 去除空字符的定义与语法介绍
May 31 PHP
apache和php之间协同工作的配置经验分享
Apr 08 PHP
基于PHP5魔术常量与魔术方法的详解
Jun 13 PHP
php使用正则表达式进行字符串搜索的方法
Mar 23 PHP
新浪微博OAuth认证和储存的主要过程详解
Mar 27 PHP
PHP中Session和Cookie是如何操作的
Oct 10 PHP
win10环境PHP 7 安装配置【教程】
May 09 PHP
利用ajax和PHP实现简单的流程管理
Mar 23 PHP
PHP实现对xml的增删改查操作案例分析
May 19 PHP
使用PHP反射机制来构造"CREATE TABLE"的sql语句
Mar 21 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
linux下使用ThinkPHP需要注意大小写导致的问题
2011/08/02 PHP
PHP学习笔记(二) 了解PHP的基本语法以及目录结构
2014/08/04 PHP
Tips 带三角可关闭的文字提示
2010/10/06 Javascript
Array, Array Constructor, for in loop, typeof, instanceOf
2011/09/13 Javascript
新发现一个骗链接的方法(js读取cookies)
2012/01/11 Javascript
JQueryEasyUI datagrid框架的进阶使用
2013/04/08 Javascript
JS返回上一页实例代码通过图片和按钮分别实现
2013/08/16 Javascript
jquery高级编程的最佳实践详解
2014/03/23 Javascript
JS中如何比较两个Json对象是否相等实例代码
2016/07/13 Javascript
微信小程序  网络请求API详解
2016/10/25 Javascript
JavaSctit 利用FileReader和滤镜上传图片预览功能
2017/09/05 Javascript
Vue2.0 http请求以及loading展示实例
2018/03/06 Javascript
JS基于封装函数实现的表格分页完整示例
2018/06/26 Javascript
如何使用vuex实现兄弟组件通信
2018/11/02 Javascript
JQuery模拟实现网页中自定义鼠标右键菜单功能
2018/11/14 jQuery
VUE简单的定时器实时刷新的实现方法
2019/01/20 Javascript
JQuery发送ajax请求时中文乱码问题解决
2019/11/14 jQuery
微信小程序实现底部弹出框
2020/11/18 Javascript
推荐11个实用Python库
2015/01/23 Python
python访问类中docstring注释的实现方法
2015/05/04 Python
Python实现爬取需要登录的网站完整示例
2017/08/19 Python
获取python的list中含有重复值的index方法
2018/06/27 Python
Python元组常见操作示例
2019/02/19 Python
10 行Python 代码实现 AI 目标检测技术【推荐】
2019/06/14 Python
Python爬虫实现模拟点击动态页面
2020/03/05 Python
英国排名第一的在线宠物用品商店:Monster Pet Supplies
2018/05/20 全球购物
西班牙电子产品购物网站:Electronicamente
2018/07/26 全球购物
关于Java String的一道面试题
2013/09/29 面试题
保险专业大学生职业规划书
2014/03/03 职场文书
2014年关于两会精神的心得体会
2014/03/17 职场文书
平安家庭示范户事迹
2014/06/02 职场文书
法制教育观后感
2015/06/17 职场文书
如何用python清洗文件中的数据
2021/06/18 Python
SQL写法--行行比较
2021/08/23 SQL Server
python ConfigParser库的使用及遇到的坑
2022/02/12 Python
Go本地测试解耦任务拆解及沟通详解Go本地测试的思路沟通的重要性总结
2022/06/21 Golang