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 相关文章推荐
一个用于MySQL的PHP XML类
Oct 09 PHP
一个连接两个不同MYSQL数据库的PHP程序
Oct 09 PHP
php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
Jul 18 PHP
php获取当月最后一天函数分享
Feb 02 PHP
PHP微信开发之二维码生成类
Jun 26 PHP
PHP使用缓存即时输出内容(output buffering)的方法
Aug 03 PHP
Java中final关键字详解
Aug 10 PHP
php如何获取文件的扩展名
Oct 28 PHP
Zend Framework教程之MVC框架的Controller用法分析
Mar 07 PHP
一个简单安全的PHP验证码类 附调用方法
Jun 24 PHP
详解php实现页面静态化原理
Jun 21 PHP
laravel 操作数据库常用函数的返回值方法
Oct 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
php Try Catch异常测试
2009/03/01 PHP
CMS中PHP判断系统是否已经安装的方法示例
2014/07/26 PHP
php通过curl模拟登陆DZ论坛
2015/05/11 PHP
实例解析php的数据类型
2018/10/24 PHP
juqery 学习之三 选择器 可见性 元素属性
2010/11/25 Javascript
jquery实现聚光灯效果的方法
2015/02/06 Javascript
JavaScript获取当前网页最后修改时间的方法
2015/04/03 Javascript
javascript中Function类型详解
2015/04/28 Javascript
基于jQuery实现响应式圆形图片轮播特效
2015/11/25 Javascript
Javascript的表单验证-初识正则表达式
2016/03/18 Javascript
浅谈$('div a') 与$('div&gt;a')的区别
2016/07/18 Javascript
pc加载更多功能和移动端下拉刷新加载数据
2016/11/07 Javascript
浅谈jquery页面初始化的4种方式
2016/11/27 Javascript
详解jQuery中的事件
2016/12/14 Javascript
jQuery实现表格元素动态创建功能
2017/01/09 Javascript
Spring Boot/VUE中路由传递参数的实现代码
2018/03/02 Javascript
mpvue+vuex搭建小程序详细教程(完整步骤)
2018/09/30 Javascript
JQuery搜索框自动补全(模糊匹配)功能实现示例
2019/01/08 jQuery
教你完全理解ReentrantLock重入锁
2019/06/03 Javascript
[00:32]2018DOTA2亚洲邀请赛Secret出场
2018/04/03 DOTA
Python线程之定位与销毁的实现
2019/02/17 Python
pygame实现贪吃蛇游戏(上)
2019/10/29 Python
python实现while循环打印星星的四种形状
2019/11/23 Python
python二维键值数组生成转json的例子
2019/12/06 Python
python批量处理txt文件的实例代码
2020/01/13 Python
python上selenium的弹框操作实现
2020/07/13 Python
美国校园市场:OCM
2017/06/08 全球购物
英国最受信任的在线眼镜商之一:Fashion Eyewear
2019/10/31 全球购物
GWT (Google Web Toolkit)有哪些主要的原件组成?
2015/06/08 面试题
电子信息专业应届生自荐信
2014/06/04 职场文书
中华在我心中演讲稿
2014/09/13 职场文书
2014年个人售房协议书
2014/10/30 职场文书
2015年营销工作总结范文
2015/04/23 职场文书
新手开公司创业注意事项有哪些?
2019/07/29 职场文书
Oracle更换为MySQL遇到的问题及解决
2021/05/21 Oracle
Python MNIST手写体识别详解与试练
2021/11/07 Python