예제 #1
0
 public static function deleteDirectory($urlOfDirectory)
 {
     $arrayExeptionFiles = array(".", "..");
     try {
         $result = DataHandler::listDirectory($urlOfDirectory);
         foreach ($result as $item) {
             $extencion = "";
             if (preg_match("/\\./", $item)) {
                 //tem um ponto de extenção
                 $extencion = strtolower(DataHandler::returnExtensionOfFile($item));
             }
             $fileUrl = DataHandler::removeDobleBars($urlOfDirectory . "/" . $item);
             if ($extencion == "") {
                 if (in_array($item, $arrayExeptionFiles)) {
                     //não fazer nada com esse
                 } else {
                     $newfolder = DataHandler::removeDobleBars($urlOfDirectory . "/" . $item);
                     //é um folder, vai varrer dentro do folder tb - recursivo
                     if (is_dir($newfolder)) {
                         //echo Debug::li("a pasta será varrida:".$newfolder);
                         self::deleteDirectory($newfolder);
                     } else {
                         unlink($newfolder);
                     }
                 }
             } else {
                 //ve se é um arquivo a se deletar
                 unlink($fileUrl);
             }
         }
         //deleta o próprio diretório enviado
         rmdir($urlOfDirectory);
     } catch (Exception $e) {
         //mudinho
         return FALSE;
     }
 }