如何使用php删除目录?

时间:2011-08-23 08:58:20

标签: php

我有一个名为install的文件夹,我有一个名为install.php的文件 我想删除安装目录 我写了

rmdir("install");
在install.php中

但它不起作用 任何人都可以帮助我,我不能将install.php文件放在安装文件夹之外。

4 个答案:

答案 0 :(得分:3)

exec('rm -rf install');

这将删除也不是空目录,你仍然需要写权限。这样做时要非常小心。

答案 1 :(得分:2)

http://php.net/manual/en/function.rmdir.php

正如它所说:目录必须为空相关权限必须允许此。失败时将生成E_WARNING级别错误。

答案 2 :(得分:1)

根据rmdir上的PHP手册,The directory must be empty, and the relevant permissions must permit this

清空目录

$handler = opendir($directory);
// open directory and walk through the filenames
while ($file = readdir($handler)) {
  if ($file != "." && $file != "..") {
    unlink($file);
  }

}
// tidy up: close the handler
closedir($handler);

要检查相关权限,请使用fileperms。通常,write权限足以删除文件夹。

答案 3 :(得分:1)

我认为rmdir函数在许多服务器中被拒绝,您可以使用rename将dir重命名为任何哈希目录

您可能需要再次安装目录:

rename("/tmp/tmp_file.txt", "/home/user/login/docs/my_file.txt");
rename("old_name","New_Name");
rename ("install" ,md5(rand()));
http://php.net/rename

您还可以使用.htaccess文件deny from all

此致