Delete folder contents

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

Delete folder contents

Δημοσίευση από vassilism » 22 Οκτ 2007 20:42

Καλησπέρα σε όλους.
Το παρακάτω script διαγραφεί έναν φάκελο που του ορίζουμε εμείς, καθώς και τα περιεχόμενά του.
Πως μπορούμε να το μετατρέψουμε, έτσι ώστε να διαγράφει μόνο τα περιεχόμενα του φακέλου?

Κώδικας: Επιλογή όλων

remove_directory('../fotos/');
function remove_directory($dir) {
        $dir_contents = scandir($dir);
        foreach ($dir_contents as $item) {
            if (is_dir($dir.$item) && $item != '.' && $item != '..') {
                remove_directory($dir.$item.'/');
            }
            elseif (file_exists($dir.$item) && $item != '.' && $item != '..') {
                unlink($dir.$item);
            }
        }
        rmdir($dir);
    }

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

Delete folder contents

Δημοσίευση από Alice_Cooper » 22 Οκτ 2007 22:20

Κώδικας: Επιλογή όλων

remove_directory('../fotos/');
function remove_directory($dir) {
        $dir_contents = scandir($dir);
        foreach ($dir_contents as $item) {
            if (is_dir($dir.$item) && $item != '.' && $item != '..') {
                remove_directory($dir.$item.'/');
            }
            elseif (file_exists($dir.$item) && $item != '.' && $item != '..') {
                unlink($dir.$item);
            }
        }
//        rmdir&#40;$dir&#41;; <==  apla diagrafontas afto 
    &#125; 
:)

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

Delete folder contents

Δημοσίευση από vassilism » 22 Οκτ 2007 22:54

:doh: Και σ&#8217;αυτή την γραμμή ούτε που της έδωσα σημασία.
Σ&#8217;ευχαριστώ πολύ Alice.

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

Delete folder contents

Δημοσίευση από Alice_Cooper » 18 Δεκ 2007 12:58

xmmm epesa pano se afto ...
tora pou to ksana eida
isos poio sosto na einai etc .....

Κώδικας: Επιλογή όλων

remove_directory&#40;'../fotos/', 0&#41;;
function remove_directory&#40;$dir, $deldir&#41; &#123;
        $dir_contents = scandir&#40;$dir&#41;;
        foreach &#40;$dir_contents as $item&#41; &#123;
            if &#40;is_dir&#40;$dir.$item&#41; && $item != '.' && $item != '..'&#41; &#123;
                remove_directory&#40;$dir.$item.'/', 1&#41;;
            &#125;
            elseif &#40;file_exists&#40;$dir.$item&#41; && $item != '.' && $item != '..'&#41; &#123;
                unlink&#40;$dir.$item&#41;;
            &#125;
        &#125;
if &#40;$deldir==1&#41; rmdir&#40;$dir&#41;;
    &#125;
me 0 den svhnei kai me ena svhnei to folder

giati alios den svhnei oute tous ypokatalogous .... an yparxoun....
episeis an kanoume to

Κώδικας: Επιλογή όλων

remove_directory&#40;$dir.$item.'/', 1&#41;; 
etc...

Κώδικας: Επιλογή όλων

remove_directory&#40;$dir.$item.'/', 0&#41;; 
Den svhnei tous ypofakelous

Άβαταρ μέλους
vassilism
Δημοσιεύσεις: 1950
Εγγραφή: 17 Μαρ 2007 14:47
Επικοινωνία:

Delete folder contents

Δημοσίευση από vassilism » 18 Δεκ 2007 14:40

Σωστός. Πολύ καλό. :clap:

Άβαταρ μέλους
zekia
Δημοσιεύσεις: 146
Εγγραφή: 04 Μάιος 2004 16:38
Τοποθεσία: thessaloniki

Delete folder contents

Δημοσίευση από zekia » 03 Οκτ 2008 14:01

Εγώ προσπαθώ να πετύχω αυτό που πετυχαίνει αρχικά το script, δηλαδή να διαγράψει και το φάκελο αλλά και όλα τα περιεχόμενά του. Δυστυχώς όμως παίρνω το παρακάτω:

Warning: rmdir(../folders/test) [function.rmdir]: Directory not empty

το script το έχω έτσι στον κώδικά μου:

Κώδικας: Επιλογή όλων

function remove_directory&#40;$dir&#41; &#123;
        $dir_contents = scandir&#40;$dir&#41;;
        foreach &#40;$dir_contents as $item&#41; &#123;
            if &#40;is_dir&#40;$dir.$item&#41; && $item != '.' && $item != '..'&#41; &#123;
                remove_directory&#40;$dir.$item.'/'&#41;;
            &#125;
            elseif &#40;file_exists&#40;$dir.$item&#41; && $item != '.' && $item != '..'&#41; &#123;
                unlink&#40;$dir.$item&#41;;
            &#125;
        &#125;
        rmdir&#40;$dir&#41;;
    &#125; 
	remove_directory&#40;'../folders/test'&#41;;
Έχετε κάποια ιδέα για το τι μπορεί να φταίει;;

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

Delete folder contents

Δημοσίευση από Alice_Cooper » 03 Οκτ 2008 15:00

kane afto

Κώδικας: Επιλογή όλων

remove_directory&#40;'../folders/test'&#41;;
etc...

Κώδικας: Επιλογή όλων

remove_directory&#40;$dir&#41;;
kai dokimase

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης