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递归删除目录与文件的方法
本文实例讲述了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 非递归实现查询该目录下所有文件 * @param unknown $dir * @return multitype:|multitype:string */ function scanfiles($dir) { if (! is_dir ( $dir )) return array (); // 兼容各操作系统 $dir = rtrim ( str_replace ( '\\', '/', $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实现递归循环每一个目录
函数的原理很简单,主要就是用了一下递归调用. 复制代码 代码如下: function file_list($path){ if ($handle = opendir($path)) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file != "..") { if (is_dir($path."/".$file)) { echo $pat
-
php递归获取目录内文件(包含子目录)封装类分享
代码如下: 复制代码 代码如下: function readFileFromDir($dir) { if (!is_dir($dir)) { return false; } //打开目录 $handle = opendir($dir); while (($file = readdir($handle)) !== false) { //排除掉当前目录和上一个目录 if ($file == "." || $file =
-
PHP递归遍历指定目录的文件并统计文件数量的方法
本文实例讲述了PHP递归遍历指定目录的文件并统计文件数量的方法.分享给大家供大家参考.具体实现方法如下: <?php //递归函数实现遍历指定文件下的目录与文件数量 function total($dirname,&$dirnum,&$filenum){ $dir=opendir($dirname); echo readdir($dir)."<br>"; //读取当前目录文件 echo readdir($dir)."<br>&qu
-
php递归列出所有文件和目录的代码
<?php /*我的程序在国外的SREVER上,自己编的程序存放到哪,我很难记清. 所以编了一个简单的目录递归函数,查看我的程序,很方便的. */ function tree($directory) { $mydir=dir($directory); echo "<ul>"; while($file=$mydir->read()){ if((is_dir("$directory/$file")) AND ($file!=".&quo
-
php递归法读取目录及文件的方法
本文实例讲述了php递归法读取目录及文件的方法.分享给大家供大家参考.具体如下: 这里实例分析php递归法读取目录及文件的方法,代码中包含较为详尽的注释,如下所示: <?php function showdir($path){ $dh = opendir($path);//打开目录 while(($d = readdir($dh)) != false){ //逐个文件读取,添加!=false条件,是为避免有文件或目录的名称为0 if($d=='.' || $d == '..'){//判断是否为.
随机推荐
- Java数据结构之链表(动力节点之Java学院整理)
- 详解Oracle自定义异常示例
- 利用python代码写的12306订票代码
- iOS开发 全机型适配解决方法
- .net mvc超过了最大请求长度的解决方法
- jsp计数器代码
- Android 中构建快速可靠的 UI 测试
- MongoDB db.serverStatus()输出内容中文注释
- jQuery实现带滑动条的菜单效果代码
- JS与Ajax Get和Post在使用上的区别实例详解
- Nginx中配置过滤爬虫的User-Agent的简单方法
- 深入C++ 函数映射的使用详解
- MT6589平台通话录音时播放提示音给对方功能的具体实现
- 详解Java中类的加载顺序
- Android中RecyclerView实现Item添加和删除的代码示例
- Java进阶教程之异常处理
- 日本首席校花,怎不叫人心动?
- Java最常用的6个简单的计算题
- 微信小程序实现搜索功能并跳转搜索结果页面
- 开发中常用的25个JavaScript单行代码(小结)