2

在我学习mkdir();PHP 函数的过程中,我在服务器上创建了一个文件夹,其路径如下

 files/New\\\\

现在,我无法终生删除它...我发现另一篇帖子说我需要使用

 rmdir();

并用更多的反斜杠转义反斜杠......

不用说,我无法让它工作......我不知道 PHP 在帖子中添加了斜线。我知道从这里开始我应该使用stripslashes();,但现在,我被两个不可删除的文件夹困住了。

有什么想法吗?

4

2 回答 2

3

Quick'n'dirty script:

$filename = glob('../files/*');

foreach($filename as $file) {

    print "'". $file. "' ";
    if(strstr($file,'New')) {
        if(is_file($file)) {
            unlink($file);
        }
    }
}
foreach($filename as $file) {
    if(strstr($file,'New')) {
        r_rmdir($file);
    }
}

function r_rmdir($dir) {
   if (is_dir($dir)) {
     $objects = scandir($dir);
     foreach ($objects as $object) {
       if ($object != "." && $object != "..") {
         if (filetype($dir."/".$object) == "dir") r_rmdir($dir."/".$object); else unlink($dir."/".$object);
       }
     }
     reset($objects);
     rmdir($dir);
   }

}

于 2013-10-19T05:54:18.920 回答
1

1.

这应该删除您为两个目录创建的所有文件夹和文件,只需运行此脚本,它应该完全删除它们

PHP

rmdir("../files/New\\\\/thumbnail");
rmdir("../files/New\\\\");

$filename = glob('../files/New\\\\\\\\\\\\\\\\/*');

foreach($filename as $file) {

    if(is_file($file)) {
        unlink($file);
    }
}
rmdir("../files/New\\\\\\\\\\\\\\\\/thumbnail");
rmdir("../files/New\\\\\\\\\\\\\\\\");      

2.

你试过用php重命名文件夹吗?喜欢,所以

PHP

$oldname = '../files/New\\\\';

$newname = '../files/please';

rename($oldname, $newname);
于 2013-10-19T05:44:19.787 回答