<?php
function delete_directory($dir) {
if ( ($dh = opendir($dir)) == true ) {
// Iterate through directory contents
$file = readdir($dh);
while ($file !== false ) {
if ( ($file == '.') || ($file == '..') )
continue;
if (is_dir($dir . '/' . $file))
delete_directory($dir . '/' . $file);
else
unlink($dir . '/' . $file);
}
closedir($dh);
rmdir($dir);
}
}
$dir = "E:/afda/";
delete_directory($dir);
?>我的E:/afda/中有一个文件夹set和一个文本文件byy.txt,为什么总是删除不了呢?
function delete_directory($dir) {
if ( ($dh = opendir($dir)) == true ) {
// Iterate through directory contents
$file = readdir($dh);
while ($file !== false ) {
if ( ($file == '.') || ($file == '..') )
continue;
if (is_dir($dir . '/' . $file))
delete_directory($dir . '/' . $file);
else
unlink($dir . '/' . $file);
}
closedir($dh);
rmdir($dir);
}
}
$dir = "E:/afda/";
delete_directory($dir);
?>我的E:/afda/中有一个文件夹set和一个文本文件byy.txt,为什么总是删除不了呢?
php Rmdir删除文件目录代码
class del_path
{
function wm_chief_delpath($del_path)
{
if(!file_exists($del_path))//目标目录不存在则建立
{echo"Directory not found.";return false;}
$hand=@opendir($del_path);
$i=0;
while($file=@readdir($hand))
{$i++;
if ($file!="."&&$file!="..")
{
//目录
if(is_dir($del_path."/".$file))
{
$del_s_path=$del_path."/".$file;
$this->wm_chief_delpath($del_s_path);
}
else
{
$del_file=$del_path."/".$file;
$this->wm_chief_file($del_file);
}
}
}
@closedir($hand);
$this->wm_chief_path($del_path);
return true;
}
//删除文件
function wm_chief_file($del_file)
{
@unlink($del_file);
}
//删除目录
function wm_chief_path($del_path)
{
@rmdir($del_path);
}
}
while ($file !== false ) {
死循环了
应为
while (($file = readdir($dh)) !== false ) {