php利用递归实现删除文件目录的方法

yipeiwu_com6年前PHP代码库

直接删除目录,如果是空目录是可以删除,如果不是空目录,这时候只能先删除目录里面的文件,然后再删除目录。我封装了个删除函数,然后直接调用这个函数。喜欢的可以直接拿去用,编码是gbk的,使用时候注意下编码。

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2016/9/10 0010
 * Time: 20:27
 */
//删除文件,先删除文件内部的文件,再删除文件夹
header("Content-type: text/html; charset=gbk");
function deldir($dir){
 $dh=opendir($dir);
 while($file=readdir($dh)){
 if($file!="." && $file!=".."){//判断是不是本目录和上级目录
 if(!is_dir($dir."/".$file)){
  unlink($dir."/".$file);
 }else{
  //递归
  deldir($dir."/".$file);
 }
 }
 }
 closedir($dh);
 if(rmdir($dir)){
 return true;
 }else{
 return false;
 }
 }
 //删除函数结束
 if(deldir("test")){
 echo '删除文件成功';
 die();
 }else
 echo '删除文件失败';
 die();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【宜配屋www.yipeiwu.com】。

为大家推荐一个关于php递归操作的精彩专题:php递归操作

相关文章

PHP单元测试框架PHPUnit用法详解

本文实例讲述了PHP单元测试框架PHPUnit用法。分享给大家供大家参考,具体如下: 以前在学习IOS开发时有专门写过Objective-C的单元测试的文章,IOS开发学习之单元测试,...

解析thinkphp中的M()与D()方法的区别

D()和M()方法的区别:D和M的区别主要在于M方法不需要创建模型类文件,M方法不会读取模型类,所以默认情况下自动验证是无效的,但是可以通过动态赋值的方式实现而D方法必须有创建模型类。我...

php冒泡排序与快速排序实例详解

本文实例分析了php冒泡排序与快速排序算法。分享给大家供大家参考,具体如下: $a=array('3','8','1','4','11','7'); print_r($a); $le...

PHP 上传文件的方法(类)

复制代码 代码如下: /** * 图片上传方法 * $maxsize=500000 = 500k; * $updir="up/"; * $upfile=$_FILES["file_img...

深入解析PHP中SESSION反序列化机制

深入解析PHP中SESSION反序列化机制

简介 在php.ini中存在三项配置项: session.save_path=""   --设置session的存储路径 session.save_hand...