我正在尝试找到一种方法来删除位于另一个文件夹内的文件夹(例如帐户/用户名 - 我想删除用户名,但它里面有2个文件夹(1个名称图像和其他命名视频) - 里面有文件。
我试过了
$accounts = "accounts";
$uploaddir = "$username";
$image_dir = 'image';
$video_dir = 'video';
$image_folder = "$accounts$username$image_dir/";
$uploadfile = $image_folder . basename($_FILES['image']['name']);
$dir = "$accounts/$uploaddir";
array_map('unlink', glob($dir."/*"));
rmdir($dir);
答案 0 :(得分:1)
关键功能:取消链接文件, scandir 和 rmdir ,但您需要扫描该目录中的所有内容并做相应的操作
1.关于文件的情况 2.使用is_dir()函数删除目录的大小写。
<?php
function deleteDir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (filetype($dir."/".$object) == "dir")
deleteDir($dir."/".$object);
else unlink ($dir."/".$object);
}
}
reset($objects);
rmdir($dir);
}
}
?>
onyour case:
$dir = "$accounts/$uploaddir";
deleteDir($dir);
干杯!
答案 1 :(得分:1)
答案 2 :(得分:0)
这是功能,我一直都在使用:
function delete_directory($dirname) {
if (is_dir($dirname))
$dir_handle = opendir($dirname);
if (!$dir_handle)
return false;
while($file = readdir($dir_handle)) {
if ($file != "." && $file != "..") {
if (!is_dir($dirname."/".$file))
unlink($dirname."/".$file);
else
delete_directory($dirname.'/'.$file);
}
}
closedir($dir_handle);
rmdir($dirname);
return true;
}