php创建多级目录与级联删除文件的方法示例


Posted in PHP onSeptember 12, 2019

本文实例讲述了php创建多级目录与级联删除文件的方法。分享给大家供大家参考,具体如下:

创建多级目录

mkdir函数只能创建一级的目录,如果我们想创建多级目录,则需要自己编写函数。

<?php
$path = "one/two/three/four";
function mkdir_p($path,$mode=0700){
  $arr = explode("/",$path);
  $path = '';
  foreach($arr as $v){
    $path .= $v;
    mkdir($path,$mode);
    $path .= "/";
  }
}
mkdir_p($path);

级联删除文件

我们知道PHP中的rmdir函数只能删除空文件夹,unlink只能用来删除文件。

我们可以自己编写函数,级联删除非空文件夹。

<?php
$path = $_SERVER['DOCUMENT_ROOT']."lib";
function rmdir_r($path){
  $handle = opendir($path);
  while($file=readdir($handle)){  //删除所有文件夹
    $type = filetype($path."/".$file);
    if($file=='.'||$file=="..")
      continue;
    if($type=="file"){
      //如果类型为文件,则删除之
      unlink($path."/".$file);
    }
    if($type=="dir"){
      //如果类型为文件夹,则级联删除
      rmdir_r($path."/".$file);
    }
  }
  closedir($handle);
  rmdir($path);
}
rmdir_r($path);

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 变量定义方法
Jun 14 PHP
php语言流程控制中的主动与被动
Nov 05 PHP
关于Iframe如何跨域访问Cookie和Session的解决方法
Apr 15 PHP
保存到桌面、设为桌面且带图标的PHP代码
Nov 19 PHP
PHP中读取文件的8种方法和代码实例
Aug 05 PHP
一波PHP中cURL库的常见用法代码示例
May 06 PHP
Zend Framework入门教程之Zend_Config组件用法详解
Dec 09 PHP
yii框架无限极分类的实现方法
Apr 08 PHP
php魔法函数与魔法常量使用介绍
Jul 23 PHP
PDO::setAttribute讲解
Jan 29 PHP
PHP实现带进度条的Ajax文件上传功能示例
Jul 02 PHP
PHP手机号码及邮箱正则表达式实例解析
Jul 11 PHP
PHP实现的文件浏览器功能简单示例
Sep 12 #PHP
PHP通过文件保存和更新信息的方法分析
Sep 12 #PHP
关于Curl在Swoole协程中的解决方案详析
Sep 12 #PHP
PHP判断一个变量是否为整数、正整数的方法示例
Sep 11 #PHP
PHP中有关长整数的一些操作教程
Sep 11 #PHP
PHP生成随机字符串实例代码(字母+数字)
Sep 11 #PHP
Yii框架参数配置文件params用法实例分析
Sep 11 #PHP
You might like
session 加入redis的实现代码
2016/07/15 PHP
js 跨域和ajax 跨域问题小结
2009/07/01 Javascript
jQuery checkbox全选/取消全选实现代码
2009/11/14 Javascript
jQuery 连续列表实现代码
2009/12/21 Javascript
js 全兼容可高亮二级缓冲折叠菜单
2010/06/04 Javascript
jquery里的正则表达式说明
2011/08/03 Javascript
JS清除IE浏览器缓存的方法
2013/07/26 Javascript
不要使用jQuery触发原生事件的方法
2014/03/03 Javascript
javascript 闭包详解
2015/02/15 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
javascript运算符——位运算符全面介绍
2016/07/14 Javascript
js css自定义分页效果
2017/02/24 Javascript
layui 选择列表,打勾,点击确定返回数据的例子
2019/09/02 Javascript
mpvue实现左侧导航与右侧内容的联动
2019/10/21 Javascript
微信小程序实现上传多个文件 超过10个
2020/03/30 Javascript
React+EggJs实现断点续传的示例代码
2020/07/07 Javascript
vue下拉刷新组件的开发及slot的使用详解
2020/12/23 Vue.js
Linux中安装Python的交互式解释器IPython的教程
2016/06/13 Python
Python中getattr函数和hasattr函数作用详解
2016/06/14 Python
浅谈Python基础之I/O模型
2017/05/11 Python
python 文件操作删除某行的实例
2017/09/04 Python
scrapy爬虫实例分享
2017/12/28 Python
Python将DataFrame的某一列作为index的方法
2018/04/08 Python
详解如何将python3.6软件的py文件打包成exe程序
2018/10/09 Python
python实现嵌套列表平铺的两种方法
2018/11/08 Python
pandas删除行删除列增加行增加列的实现
2019/07/06 Python
通过实例了解python property属性
2019/11/01 Python
python 对象真假值的实例(哪些视为False)
2020/12/11 Python
python用700行代码实现http客户端
2021/01/14 Python
分享一个H5原生form表单的checkbox特效代码
2018/02/26 HTML / CSS
Shopee越南:东南亚与台湾电商平台
2019/02/03 全球购物
如何将无状态会话Bean发布为WEB服务,只有无状态会话Bean可以发布为WEB服务?
2015/12/03 面试题
市场安全管理制度
2014/01/26 职场文书
班组安全员工作职责
2014/02/01 职场文书
会计助理岗位职责
2014/02/17 职场文书
2014初中数学教研组工作总结
2014/12/19 职场文书