PHP删除指定目录中的所有目录及文件的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP删除指定目录中的所有目录及文件的方法。分享给大家供大家参考。具体实现方法如下:

<?php
/*
 * 
 * 删除指定目录中的所有目录及文件(或者指定文件)
 * 可扩展增加一些选项(如是否删除原目录等)
 * 删除文件敏感操作谨慎使用
 * @param $dir 目录路径
 * @param array $file_type指定文件类型
 */
function delFile($dir,$file_type='') { 
  if(is_dir($dir)){
    $files = scandir($dir);
 //打开目录 //列出目录中的所有文件并去掉 . 和 .. 
    foreach($files as $filename){
      if($filename!='.' && $filename!='..'){
        if(!is_dir($dir.'/'.$filename)){
          if(empty($file_type)){
            unlink($dir.'/'.$filename);
          }else{
            if(is_array($file_type)){
              //正则匹配指定文件
              if(preg_match($file_type[0],$filename)){
                unlink($dir.'/'.$filename);
              }
            }else{
              //指定包含某些字符串的文件
              if(false!=stristr($filename,$file_type)){
                unlink($dir.'/'.$filename);
              }
            }
          }
        }else{ 
          delFile($dir.'/'.$filename);
          rmdir($dir.'/'.$filename);
        } 
      }
    }
  }else{
    if(file_exists($dir)) unlink($dir);
  } 
}
delFile(dirname(__FILE__),'html');

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

相关文章

PHP中十六进制颜色与RGB颜色值互转的方法

16进制的颜色值通常表示为#FFFFFF,当前也有缩减为#FFF,前提是两位两位必需相同,例如#FEFEFE这种,就不能进行缩减。而RGB的颜色格式是由3组0~255的数字构成,分别代表...

PHP数组去重的更快实现方式分析

本文实例讲述了PHP数组去重的更快实现方式。分享给大家供大家参考,具体如下: 概述 使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的...

PHP怎么实现网站保存快捷方式方便用户随时浏览

PHP怎么实现网站保存快捷方式呢?下面是一段PHP代码,下面这段代码,可以PHP实现网站保存快捷方式,以便用户随时浏览。 复制代码 代码如下: <?php $Shortcut =...

php 开发中加密的几种方法总结

php 开发中加密的几种方法总结

1,使用crypt()函数进行加密 crypt()函数可以进行单项加密,具体语法如下: string crypt(string str[,tring salt]) 其中...

浅谈PHP中foreach/in_array的使用

php在开发效率很高,这是无可厚非的,但是却是在牺牲执行效率的。php数组功能非常强大,但是也要多加考虑,多试几种情况情况,以防万一,这里,我就简单的说两个遇到的坑,以后如果有发现更多的...