首页 >后端开发 >php教程 > 正文

PHP的unlink与rmdir删除目录及目录下所有文件方法

原创2018-05-24 11:32:37017798
在php中删除文件与目录其实很简单只要两个函数一个是unlink一个rmdir函数,如果要实现删除目录及目录下的文件我们需要利用递归来操作.本文主要和大家介绍了PHP unlink与rmdir删除目录及目录下所有文件的实例代码,需要的朋友可以参考下,希望能帮助到大家。

函数代码:仅删除指定目录下的文件,不删除目录文件夹,代码如下:

class shanchu { 
//循环目录下的所有文件 
function delFileUnderDir( $dirName=”../Smarty/templates/templates_c” ) 
{ 
if ( $handle = opendir( “$dirName” ) ) { 
while ( false !== ( $item = readdir( $handle ) ) ) { 
if ( $item != “.” && $item != “..” ) { 
if ( is_dir( “$dirName/$item” ) ) { 
delFileUnderDir( “$dirName/$item” ); 
} else {//开源代码phpfensi.com 
if( unlink( “$dirName/$item” ) )echo “成功删除文件: $dirName/$item<br />n”; 
} 
} 
} 
closedir( $handle ); 
} 
} 
}

假设需要删除一个名叫”upload”目录下的所有文件,但无需删除目录文件夹,你可以通过以下代码完成:

<?php delFileUnderDir( ‘upload');?>

php删除所有目录,代码如下:

function deltree($pathdir) 
{ 
echo $pathdir;//调试时用的 
if(is_empty_dir($pathdir))//如果是空的 
{ 
rmdir($pathdir);//直接删除 
} 
else 
{//否则读这个目录,除了.和..外 
$d=dir($pathdir); 
while($a=$d->read()) 
{ 
if(is_file($pathdir.'/'.$a) && ($a!='.') && ($a!='..')){unlink($pathdir.'/'.$a);} 
//如果是文件就直接删除 
if(is_dir($pathdir.'/'.$a) && ($a!='.') && ($a!='..')) 
{//如果是目录 
if(!is_empty_dir($pathdir.'/'.$a))//是否为空 
{//如果不是,调用自身,不过是原来的路径+他下级的目录名 
deltree($pathdir.'/'.$a); 
} 
if(is_empty_dir($pathdir.'/'.$a)) 
{//如果是空就直接删除 
rmdir($pathdir.'/'.$a); 
} 
} 
} 
$d->close(); 
echo "必须先删除目录下的所有文件";//我调试时用的 
} 
} 
function is_empty_dir($pathdir) 
{ 
//判断目录是否为空 
$d=opendir($pathdir); 
$i=0; 
while($a=readdir($d)) 
{ 
$i++; 
} 
closedir($d); 
if($i>2){return false;} 
else return true; 
}

PHP删除目录及目录下所有文件,代码如下:

<?php 
//循环删除目录和文件函数 
function delDirAndFile( $dirName ) 
{ 
if ( $handle = opendir( “$dirName” ) ) { 
while ( false !== ( $item = readdir( $handle ) ) ) { 
if ( $item != “.” && $item != “..” ) { 
if ( is_dir( “$dirName/$item” ) ) { 
delDirAndFile( “$dirName/$item” ); 
} else { 
if( unlink( “$dirName/$item” ) )echo “成功删除文件: $dirName/$item<br />n”; 
} 
} 
} 
closedir( $handle ); 
if( rmdir( $dirName ) )echo “成功删除目录: $dirName<br />n”; 
} 
} 
//假设需要删除一个名叫”upload”的同级目录即此目录下的所有文件,你可以通过以下代码完成: 
delDirAndFile( ‘upload'); 
?>

相关推荐:

PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用

PHP unlink() 函数

php中unlink()、mkdir()、rmdir()等的用法介绍

以上就是PHP的unlink与rmdir删除目录及目录下所有文件方法的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:unlink rmdir php
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    推荐视频教程
  • javascript初级视频教程javascript初级视频教程
  • jquery 基础视频教程jquery 基础视频教程
  • 视频教程分类