在php中删除目录中的文件夹和文件
我试图找到一种方法来删除位于另一个文件夹中的文件夹(例如帐户/用户名-我想删除用户名,但其中有2个文件夹(1个名称图像和其他命名视频)-其中包含文件 我试过了在php中删除目录中的文件夹和文件,php,Php,我试图找到一种方法来删除位于另一个文件夹中的文件夹(例如帐户/用户名-我想删除用户名,但其中有2个文件夹(1个名称图像和其他命名视频)-其中包含文件 我试过了 $accounts = "accounts"; $uploaddir = "$username"; $image_dir = 'image'; $video_dir = 'video'; $image_folder = "$accounts$username$image_dir/"; $uploadfile = $image_folde
$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);
关键功能:取消链接文件、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);
}
}
?>
干杯!您可以使用以下功能
unlink(file_path);
您可以删除完整的文件夹/文件。请参阅
谢谢
Amit这是我一直使用的函数:
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;
}
这会删除文件和文件夹吗检查:这是一个已退出的上载文件夹,还是在上载时正在删除文件夹?请参阅:
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;
}