---
title: "Radera undermapp"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/171092-radera-undermapp"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Trankan"
published: "2008-04-26T10:00:57.000Z"
updated: "2008-04-27T21:02:11.000Z"
replies: 6
views: 642
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/171092-radera-undermapp"
---

# Radera undermapp

## #1 — Trankan, 2008-04-26T10:00Z

Hej!

Skulle vilja ha en funktion som raderar en undermapp och dess innehåll utan att radera den mapp som undermappen ligger i. Är det någon som vet hur man löser det här?

Permalänk: https://www.webforum.nu/p/171092

## #2 — MarkusHelin, 2008-04-26T12:04Z

kolla detta exemplet:
<http://se2.php.net/manual/en/function.rmdir.php#82764>

sitter du på \*unix kan du köra system("rm -rf undermapp/");

Permalänk: https://www.webforum.nu/p/2103377

## #3 — Trankan, 2008-04-26T21:03Z

Testade faktiskt just det exemplet, men det raderar även den mapp som undermappen ligger i.  :l

Permalänk: https://www.webforum.nu/p/2103413

## #4 — MarkusHelin, 2008-04-26T23:18Z

använd funktionen is_dir() för kolla om filen är en mapp. Är filen en mapp får du välja att inte radera ut den.

te.x

```
if!(is_dir($var)){
rm_dir($var) }
else {
//gör ingenting
}
```

Permalänk: https://www.webforum.nu/p/2103422

## #5 — Trankan, 2008-04-27T09:46Z

Förstår inte riktigt? Mappen som sökvägen går till ska ju tas bort, men grejen är den att mappen inte ligger i roten på FTP:n utan i en annan mapp som ska vara kvar. Det kan även tilläggas att PHP-filen med scriptet ligger inte i samma mapp som den mapp som ska tas bort.

Permalänk: https://www.webforum.nu/p/2103441

## #6 — vic, 2008-04-27T14:47Z

Något i den här stilen bör ju fungera

```php
<?php

function delete_dir_content($path, $delete_files=false) {

  if ($handle = opendir($path)) {

    while (false !== ($file = readdir($handle))) {
        if(is_dir($file)) {
           delete_dir_content($path.$file, true);
           rmdir($path.$file);
        }
       elseif($delete_files) {
          unlink($file); 
       }
    }

    closedir($handle);
  }
}
?>
```

Om detta blev rätt nu så raderar funktionen alla undermappar och dess innehåll, filerna i mappen behålls dock. Vill du radera allt i mappen så anropar du delete_dir_content('mapp/', true); vill du enbart radera alla undermappar anropar du delete_dir_content('mapp/');

// Vic

Permalänk: https://www.webforum.nu/p/2103467

## #7 — Trankan, 2008-04-27T21:02Z

Tack för svaret Vic! Vet inte om jag var otydlig, men det kommer att finnas flera undermappar och jag vill kunna radera en specifik mapp, så jag misstänker att din funktion inte fungerar så bra?

Permalänk: https://www.webforum.nu/p/2103561

---

Tråden på webben: https://www.webforum.nu/amne/php/171092-radera-undermapp
