Пытаетесь удалить каталог с содержимым в нем (Cake PHP 4)? - PullRequest
0 голосов
/ 07 августа 2020

Я пытаюсь удалить весь каталог, в котором есть файлы или, возможно, даже больше папок, я тестировал следующий код:

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

Приведенный выше код работает должным образом и удаляет каталог успешно Когда я пробую тот же код в Cake PHP 4, он не удаляет каталог:

    public function rrmdir($dir) { 
      $this->autoRender = false;
      if (is_dir($dir)) { 
        $objects = scandir($dir);
        foreach ($objects as $object) { 
          if ($object != "." && $object != "..") { 
            if (is_dir($dir. DS .$object) && !is_link($dir."/".$object)){
              $this->rrmdir($dir. DS .$object);
            }
            else{
              unlink($dir. DS .$object); 
            }
          } 
        }
        $this->rmdir($dir); 
      } 
    }
...