我尝试使用将目录的全部内容复制到另一个位置
copy ("old_location/*.*","new_location/");
Run Code Online (Sandbox Code Playgroud)
但它说无法找到流,真的*.*找不到.
任何其他方式
谢谢戴夫
如何在PHP中删除目录及其全部内容(文件和子目录)?
我试图删除一个目录rmdir,但我收到了"目录不为空"的消息,因为它仍然有文件.
我可以使用什么功能删除包含其中所有文件的目录?
我有一种方法可以使用RegExp或通配符搜索快速删除文件夹中的所有文件,然后在PHP中删除该文件夹,不使用"exec"命令?我的服务器没有授权我使用该命令.一个简单的循环就足够了.
我需要一些能够完成以下陈述背后的逻辑的东西,但显然是有效的:
$dir = "/home/dir"
unlink($dir . "/*"); # "*" being a match for all strings
rmdir($dir);
我需要使用PHP删除包含内容的文件夹.rmdir()并unlink()删除空文件夹,但无法删除包含内容的文件夹.
我正在使用PHP来移动图像子文件夹的内容
GalleryName /图片/
到另一个文件夹.移动后,我需要删除GalleryName目录及其中的所有其他内容.
我知道rmdir()除非目录为空,否则无效.我花了一段时间尝试构建一个递归函数scandir()从顶部开始,然后unlink()如果它是一个文件,scandir()如果它是一个目录,那么rmdir()每个空目录就像我去的那样.
到目前为止,它并没有完全正确,我开始思考 - 这不是一个PHP应该能够做的非常简单的功能吗?删除目录?
那么有什么我想念的吗?或者至少有一个人们用于此行动的经过验证的功能?
任何帮助,将不胜感激.
PS我在这里比在php.net网站上的评论更信任你们 - 那里有数百种功能但是我很想知道你们这里是否有人推荐其他人.
我需要一个脚本,可以删除整个目录及其所有子文件夹,文件等.我尝试使用此功能,我在几个月前在互联网上找到但它不能完全工作.
function deleteFile($dir) {
if(substr($dir, strlen($dir)-1, 1) != '/') {
$dir .= '/';
}
if($handle = opendir($dir)) {
while($obj = readdir($handle)) {
if($obj != '.' && $obj != '..') {
if(is_dir($dir.$obj)) {
if(!deleteFile($dir.$obj)) {
echo $dir.$obj."<br />";
return false;
}
}
elseif(is_file($dir.$obj)) {
if(!unlink($dir.$obj)) {
echo $dir.$obj."<br />";
return false;
}
}
}
}
closedir($handle);
if(!@rmdir($dir)) {
echo $dir.'<br />';
return false;
}
return true;
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
对于测试,我使用prestashop的解压缩存档,我尝试删除解压缩存档的文件夹,但它不起作用.
/home/***/public_html/prestashop/img/p/3/
/home/***/public_html/prestashop/img/p/3
/home/***/public_html/prestashop/img/p
/home/***/public_html/prestashop/img
Run Code Online (Sandbox Code Playgroud)
这些是问题文件夹.我第一次想到 - "可能是文件的chmod存在问题"但是当我用chmod权限755(之后用777)测试所有文件时 - 结果是一样的.
可能重复:
如何使用PHP删除包含内容的文件夹
我知道您可以使用rmdir删除空文件夹.我知道您可以使用以下三行清除文件夹.
foreach($directory_path as $file) {
unlink($file);
}
Run Code Online (Sandbox Code Playgroud)
但是如果其中一个文件实际上是一个子目录呢.如何摆脱它,但无限量,如双镜面效果.在php中有任何强制删除目录吗?
谢谢
我在一个网站上工作,必须通过在指定文件夹中创建目录来存储四个不同格式的图像。我已经创建了目录并将图像插入其中。现在我的问题是我无法删除包含所有图像的目录。
假设我有
$path = "offer_pic/";
$directory = $r2['shop_name'];
$realpath=$path.$directory.'/';
Run Code Online (Sandbox Code Playgroud)
如何删除其中的所有图像$realpath以及目录本身($directory)?
php ×9
directory ×5
recursion ×2
file ×1
file-io ×1
filesystems ×1
rmdir ×1
subdirectory ×1
unlink ×1