php自定义函数之递归删除文件及目录
/*—————————————————— */
//– 递归删除文件及目录
//– 例: del_dir (‘../cache/');注意:返回的/是必须的
//– $type 强制删除目录, true 是 ,false 否
/*—————————————————— */
function del_dir ($dir,$type=true)
{
$n=0;
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
//.svn 忽略 svn 版本控制信息
if ( $file == '.' or $file =='..' or $file == '.svn')
{
continue;
}
if (is_file ($dir.$file))
{
unlink($dir.$file);
$n++;
}
if (is_dir ($dir.$file))
{
del_dir ($dir.$file.'/');
if ($type)
{
$n++;
rmdir($dir.$file.'/');
}
}
}
}
closedir($dh);
}
return $n;
}
相关推荐
-
php递归获取目录内文件(包含子目录)封装类分享
代码如下: 复制代码 代码如下: function readFileFromDir($dir) { if (!is_dir($dir)) { return false; } //打开目录 $handle = opendir($dir); while (($file = readdir($handle)) !== false) { //排除掉当前目录和上一个目录 if ($file == "." || $file =
-
php递归列出所有文件和目录的代码
<?php /*我的程序在国外的SREVER上,自己编的程序存放到哪,我很难记清. 所以编了一个简单的目录递归函数,查看我的程序,很方便的. */ function tree($directory) { $mydir=dir($directory); echo "<ul>"; while($file=$mydir->read()){ if((is_dir("$directory/$file")) AND ($file!=".&quo
-
用PHP实现递归循环每一个目录
函数的原理很简单,主要就是用了一下递归调用. 复制代码 代码如下: function file_list($path){ if ($handle = opendir($path)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { if (is_dir($path."/".$file)) { echo $pat
-
PHP不用递归遍历目录下所有文件的代码
实现代码: /** * PHP 非递归实现查询该目录下所有文件 * @param unknown $dir * @return multitype:|multitype:string */ function scanfiles($dir) { if (! is_dir ( $dir )) return array (); // 兼容各操作系统 $dir = rtrim ( str_replace ( '\\', '/', $dir ), '/' ) . '/'; // 栈,默认值为传入的目录 $
-
php递归法读取目录及文件的方法
本文实例讲述了php递归法读取目录及文件的方法.分享给大家供大家参考.具体如下: 这里实例分析php递归法读取目录及文件的方法,代码中包含较为详尽的注释,如下所示: <?php function showdir($path){ $dh = opendir($path);//打开目录 while(($d = readdir($dh)) != false){ //逐个文件读取,添加!=false条件,是为避免有文件或目录的名称为0 if($d=='.' || $d == '..'){//判断是否为.
-
php递归删除目录与文件的方法
本文实例讲述了php递归删除目录与文件的方法.分享给大家供大家参考.具体实现方法如下: <?php function deldir($path){ $dh = opendir($path); var_dump(readdir($dh)); while(($d = readdir($dh)) !== false){ if($d == '.' || $d == '..'){//如果为.或.. continue; } $tmp = $path.'/'.$d; if(!is_dir($tmp)){//如
-
php实现用于删除整个目录的递归函数
本文实例讲述了php实现用于删除整个目录的递归函数.分享给大家供大家参考.具体实现方法如下: <?php function delete_directory($dir) { if ($dh = @opendir($dir)) { while (($file = readdir ($dh)) != false) { if (($file == ".") || ($file == "..")) continue; if (is_dir($dir . '/' . $
-
php上传文件,创建递归目录的实例代码
复制代码 代码如下: <?php $uid=$_REQUEST['uid']; $avatar = 'D:/avic/discuz/uc_server/data/avatar/'.get_avatar($uid, $size, $type);$dir=dirname($avatar); //创建目录成功后移动临时文件if(mkdirs($dir)){ if($_FILES["pic"]["error"] >= 0){ if(move_uploaded_f
-
PHP递归创建多级目录
我的第一个感觉就是用递归创建,具体思路如下: function Directory($dir){ if(is_dir($dir) || @mkdir($dir,0777)){ //查看目录是否已经存在或尝试创建,加一个@抑制符号是因为第一次创建失败,会报一个"父目录不存在"的警告. echo $dir."创建成功<br>"; //输出创建成功的目录 }else{ $dirArr=explode('/',$dir); //当子目录没创建成功时,试图创建父目
-
PHP递归遍历指定目录的文件并统计文件数量的方法
本文实例讲述了PHP递归遍历指定目录的文件并统计文件数量的方法.分享给大家供大家参考.具体实现方法如下: <?php //递归函数实现遍历指定文件下的目录与文件数量 function total($dirname,&$dirnum,&$filenum){ $dir=opendir($dirname); echo readdir($dir)."<br>"; //读取当前目录文件 echo readdir($dir)."<br>&qu
随机推荐
- JavaScript中创建对象的7种模式详解
- jQuery EasyUI API 中文文档 - Panel面板
- PHP正则表达式抓取某个标签的特定属性值的方法
- 在uiview 的tableView中点击cell进入跳转到另一个界面的实现方法
- IOS ObjectC与javascript交互详解及实现代码
- Jquery图片延迟加载插件jquery.lazyload.js的使用方法
- Blitz templates 最快的PHP模板引擎
- python字符串连接的N种方式总结
- C#实现窗体间传递数据实例
- C#简单嵌套flash读取数据的实现代码
- MongoDB系列教程(八):GridFS存储详解
- PHP简单创建压缩图的方法
- 使用eclipse快速新建spirngboot项目的方法
- C# 邮件发送和接收实现代码
- 解决Python网页爬虫之中文乱码问题
- python基于递归解决背包问题详解
- Node.js系列之连接DB的方法(3)
- Json.net日期格式化设置方式
- PHP5中使用mysqli的prepare操作数据库的介绍
- Ubuntu环境下SSH的安装及使用详解
