php创建和删除目录函数介绍和递归删除目录函数分享


Posted in PHP onNovember 18, 2014

mkdir() — 新建目录

? 语法:bool mkdir (string pathname [,int mode])

? 尝试新建一个由 pathname 指定的目录。

rmdir() — 删除目录
? 语法:bool rmdir ( string dirname )

? 尝试删除 dirname 所指定的目录。 该目录必须是空的,而且要有相应的权限。如果成功则返回 TRUE,失败则返回

FALSE。

unlink — 删除文件
? 语法:bool unlink ( string filename )

? 删除 filename。和 Unix C 的 unlink() 函数相似。如果成功则返回 TRUE,失败则返回 FALSE。

在PHP中,使用mkdir()函数只需要传入一个目录名即可很容易地建立一个新目录。但删除目录所使用的函数rmdir(),只能删除一个空目录并且目录必须存在。如果是非空的目录就需要先进入到目录中,使用unlink()函数将目录中的每个文件都删除掉,再回来将这个空目录删除。如果目录中还存在目录,而且子目录也非空,就要使用递归的方法了。自定义递归函数删除目录的程序代码如下所示:

<?php

//自定义函数递归的删除整个目录

function delDir($directory){

    if(file_exists($directory)){      //如果不存在rmdir()函数会出错

        if($dir_handle = @opendir($directory)){       //打开目录,并判断是否能成功打开

            while($filename = readdir($dir_handle)){       //循环遍历目录下的所有文件

               if($filename != "."&& $filename != ".."){       //一定要排除两个特殊的目录

                   $subFile = $directory."/".$filename;       //将目录下的子文件和当前目录相连

                   if(is_dir($subFile))        //如果为目录则条件成立

                   delDir($subFile);       //递归地调用自身函数,删除子目录

                   if(is_file($subFile))      //如果是文件则条件成立

                   unlink($subFile);           //直接删除这个文件

               }

            }

            closedir($dir_handle); //关闭文件资源

            rmdir($directory); //删除空目录

         }

      }

}

 

dirDir("phpMyAdmin"); //调用delDir()函数,将程序所在目录中的“phpMyAdmin”文件删除

?>

当然也可以通过调用操作系统命令“rm-rf”删除非空的目录,但也要从安全和跨平台方面考虑尽量不要去使用。

PHP 相关文章推荐
PHP4在WinXP下IIS和Apache2服务器上的安装实例
Oct 09 PHP
TMDPHP 模板引擎使用教程
Mar 13 PHP
php分页示例分享
Apr 30 PHP
详解WordPress开发中get_header()获取头部函数的用法
Jan 08 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
Nov 25 PHP
PHP中快速生成随机密码的几种方式
Apr 17 PHP
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
May 11 PHP
phpStudy配置多站点多域名和多端口的方法
Sep 01 PHP
php生成毫秒时间戳的实例讲解
Sep 22 PHP
浅谈PHP中如何实现Hook机制
Nov 14 PHP
Yii框架操作cookie与session的方法实例详解
Sep 04 PHP
laravel dingo API返回自定义错误信息的实例
Sep 29 PHP
PHP递归复制、移动目录的自定义函数分享
Nov 18 #PHP
PHP打开和关闭文件操作函数总结
Nov 18 #PHP
PHP文件读写操作相关函数总结
Nov 18 #PHP
PHP中通过fopen()函数访问远程文件示例
Nov 18 #PHP
PHP移动文件指针ftell()、fseek()、rewind()函数总结
Nov 18 #PHP
PHP文件锁函数flock()详细介绍
Nov 18 #PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
Nov 18 #PHP
You might like
php preg_filter执行一个正则表达式搜索和替换
2012/02/27 PHP
Linux下CoreSeek及PHP扩展模块的安装
2012/09/23 PHP
编写Smarty插件在模板中直接加载数据的详细介绍
2013/06/26 PHP
PHP获取当前执行php文件名的代码
2017/03/02 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
Array的push与unshift方法性能比较分析
2011/03/05 Javascript
你需要知道的10个最佳javascript开发实践小结
2012/04/15 Javascript
jquery win 7透明弹出层效果的简单代码
2013/08/06 Javascript
javascript搜索框点击文字消失失焦时文本出现
2014/09/18 Javascript
jQuery scrollFix滚动定位插件
2015/04/01 Javascript
JS实现仿微博可关闭弹出层效果
2015/09/21 Javascript
jQuery倒计时代码(超简单)
2017/02/27 Javascript
jQuery正则验证注册页面经典实例
2017/06/10 jQuery
jQuery实现右侧抽屉式在线客服功能
2017/12/25 jQuery
javascript和php使用ajax通信传递JSON的实例
2018/08/21 Javascript
解决Vue中 父子传值 数据丢失问题
2019/08/27 Javascript
vue实现整屏滚动切换
2020/06/29 Javascript
[00:37]食人魔魔法师轮盘吉兆顺应全新至宝将拥有额外款式
2019/12/19 DOTA
python常见的格式化输出小结
2016/12/15 Python
python进行两个表格对比的方法
2018/06/27 Python
python实现BP神经网络回归预测模型
2019/08/09 Python
python百行代码自制电脑端网速悬浮窗的实现
2020/05/12 Python
Python直接赋值及深浅拷贝原理详解
2020/09/05 Python
python实现在列表中查找某个元素的下标示例
2020/11/16 Python
详解Html5原生拖拽操作
2018/01/12 HTML / CSS
KIEHL’S科颜氏官方旗舰店:源自美国的顶级护肤品牌
2018/06/07 全球购物
澳大利亚领先的孕妇服装品牌:Mamaway
2018/08/14 全球购物
King Apparel官网:英国街头服饰品牌
2019/09/05 全球购物
体育教师工作总结的自我评价
2013/10/10 职场文书
幼儿园实习生辞职信
2014/01/20 职场文书
办公室班子四风问题对照检查材料
2014/10/04 职场文书
中英文求职信范文
2015/03/19 职场文书
golang 实现Location跳转方式
2021/05/02 Golang
Spring Cloud Gateway去掉url前缀
2021/07/15 Java/Android
PyTorch中的torch.cat简单介绍
2022/03/17 Python
python小型的音频操作库mp3Play
2022/04/24 Python