php递归删除文件夹目录_php如何递归删除目录

php递归删除目录的方法:首先创建一个PHP示例文件;然后通过“DATA_DIR .'/compiled/';”方法获取文件所在路径;接着列出文件和目录;最后使用递归方法删除目录即可。

ab93aa618f501b51f878e7ef55afcb3f.png

php 递归删除目录

首先要知道什么是递归,这样之后在去读递归代码,以及写都轻而易举

下边所列出的递归代码,是删除文件目录,可做稍微改动显示文件及目录

代码如下:public function clear(){

$compile = DATA_DIR .'/compiled/'; //指文件所在路径

_rmdir($compile,1);

}

// 列出文件和目录

function _scandir($dir) {

if(function_exists('scandir')) return scandir($dir); // 有些服务器禁用了scandir

$dh = opendir($dir);

$arr = array();

while($file = readdir($dh)) {

if($file == '.' || $file == '..') continue;

$arr[] = $file;

}

closedir($dh);

return $arr;

}

// 递归删除目录

function _rmdir($dir, $keepdir = 0) {

if(!is_dir($dir) || $dir == '/' || $dir == '../') return FALSE; // 避免意外删除整站数据

$files = _scandir($dir);

foreach($files as $file) {

if($file == '.' || $file == '..') continue;

$filepath = $dir.'/'.$file;

if(!is_dir($filepath)) {

try{unlink($filepath);}catch(Exception $e){}

}else{

_rmdir($filepath);

}

}

if(!$keepdir) try{rmdir($dir);}catch(Exception $e){}

return TRUE;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值