php目录递归删除

<?php

// $call_num = 0;
$path = ‘e:/test/‘;
$result = rmDirs($path, $n);
var_dump($result);
var_dump($n);
/**
 * @param 目录地址
 */
function rmDirs($path, &$call) {
    ++ $call;
    // ++ $GLOBALS[‘call_num‘];
    $dir_handle = openDir($path);
    while(false !== $file=readDir($dir_handle)) {
        if ($file==‘.‘ || $file==‘..‘) continue;

        //判断当前是否为目录
        if(is_dir($path . ‘/‘ . $file)) {
            //是目录
            $func_name = __FUNCTION__;
            $func_name($path . ‘/‘ . $file, $call);
        } else {
            //文件
            unlink($path . ‘/‘ . $file);  //Unlink(文件地址)删除文件。
        }

    }
    closeDir($dir_handle);
    return rmdir($path);
}
时间: 2024-08-27 13:14:45

php目录递归删除的相关文章

IO流-递归删除带内容的目录

/* * 需求:递归删除带内容的目录 * * 目录:demo * ---------------------------------------------------------------------------------- * 具体的demo目录如下: * demo\aaaa\a1.txt * demo\aaaa\a2.txt * demo\bbbb\b1.txt * demo\bbbb\b2.txt * 具体的删除结果如下:(删除顺序:先删某文件夹下的文件,再删该文件) * a1.tx

对指定多个目录的第一级保留进行保留(再递归删除空目录)

对指定多个目录的第一级保留进行保留(再递归删除空目录): 注:1.先从1个文件里读取多个大目录2.再将大目录里的第一级目录抓取后存到另1文件3.再对第一级目录的子目录判断是否为空 vi a1.py #!/usr/bin/python import os os.remove('/root/python/logs/py.log')os.mknod('/root/python/logs/py.log') g = open('/root/python/py.txt','r')for h in g.rea

C#递归删除文件夹目录及文件

在C#文件操作过程中,有时候需要删除相应目录,如果文件夹中含有其他文件夹或者文件,也需要一并进行删除,此时可能就需要使用递归来删除文件夹目录以及文件,递归过程中,如果遍历的对象是文件夹,则删除文件夹,若是文件,则删除对应文件.Directory.Delete方法可用于删除文件夹,File.Delete方法用于删除文件.具体的代码实现如下:/// <summary>/// 递归删除文件夹目录及文件/// </summary>/// <param name="dir&q

java递归删除文件及目录

package base; import java.io.File; public class delete { public static void main(String[] args) { deleteFileAndFoder("../yang"); } static void deleteFileAndFoder(String path){ File f=new File(path); if(f.isDirectory()){//假设是文件夹.先递归删除 String[] li

JUnit 3.8 演示递归删除文件目录的 测试类程序 .

用递归方式来实现删除硬盘的文件或目录(空文件夹) 首先要找到递归的入口及出口,这点很重要,成败在此,呵呵! 代码实现: [java] view plain copy import java.io.File ; class RecursionDeleteFileDemo //利用递归 删除 文件或目录 操作 { public static void deleteFiles(File file) { //递归出口 //判断目前文件,如果是文件 或 是一个空的文件夹,则删除 if(file.isFil

PHP之递归删除

1 <?php 2 3 //递归删除目录 4 $path = "D:/a"; 5 //调用递归函数 6 $res = diGUiRmDir($path); 7 //输出结果 8 var_dump($res); 9 10 function diGUiRmDir($path){ 11 12 //打开目录句柄 13 $handle = opendir($path); 14 15 //readdir() 从目录句柄中读取条目 16 //返回目录中下一个文件的文件名.文件名以在文件系统中的

SVN莫名出错,网上找遍无果,递归删除当前目录下所有.svn文件名

哎,太深刻的教训. 原来以前其它目录里有.SVN目录 ,而此SVN目录COPY到真正的SVN工作目录之后,会将有用的.SVN目录覆盖. 那么一样,显然,CI,UPDATE,CO之间的命令全部异常... 搞了近一个小时才想起... 删除所有原目录下的.SVN目录,搞定!! # 在当前文件夹及子文件夹下查找.svn文件夹并递归删除 find . -name '.svn' -type d | xargs rm -rf

[代码应用]javaSE程序递归删除文件夹下的.bak文件程序源代码

本文地址:http://blog.csdn.net/sushengmiyan/article/details/39158939 本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 现在写js代码就习惯使用editplus来写代码,但是每次都是会自动生

C#追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件

C#追加文件 StreamWriter sw = File.AppendText(Server.MapPath(".")+"\\myText.txt"); sw.WriteLine("追逐理想"); sw.WriteLine("kzlll"); sw.WriteLine(".NET笔记"); sw.Flush(); sw.Close();C#拷贝文件 string OrignFile,NewFile; Or