【发布时间】:2010-11-27 07:10:32
【问题描述】:
我正在使用 PHP 移动图像子文件夹的内容
画廊名称/图片/
到另一个文件夹。移动后,我需要删除 GalleryName 目录以及其中的所有其他内容。
我知道除非目录为空,否则rmdir() 将不起作用。我花了一段时间尝试从顶部开始构建一个递归函数到scandir(),然后是unlink()(如果它是一个文件)和scandir()(如果它是一个目录),然后是rmdir()每个空目录。
到目前为止,它的工作并不完全正确,我开始思考 -- 这不是 PHP 应该能够完成的简单得离谱的功能吗? 删除目录?
那么我有什么遗漏吗?或者是否至少有一个经过验证的功能可供人们用于此操作?
任何帮助将不胜感激。
PS 我比 php.net 网站上的 cmets 更信任你们——那里有数百个功能,但我很想知道你们这里是否有人推荐其中一个。
【问题讨论】:
-
您是否考虑过带有 'rm -fr' 的 shell_exec() 函数?不是最好的方法,但如果你现在正在做的事情,它工作得很好。
-
@rogeriopvl 非常危险,但如果你必须使用 shell 转义和真实路径功能