effacer tous les fichiers d'un dossier

Eléphanteau du PHP | 22 Messages

02 avr. 2016, 19:44

Bonjour

J'ai un dossier contenant des images de noms differents et d'extensions
differentes comment vider ce dossier

j'ai essayé ceci trouve sur le net et ça tourne en boucle
jusqu'a me donner l'erreur delai 30 secondes d'execution dépassé

Code : Tout sélectionner

<?php $dossier_traite = "ROOT.'data/dossier/'.$nom.'/'"; $repertoire = opendir($dossier_traite); // On définit le répertoire dans lequel on souhaite travailler. while (false !== ($fichier = readdir($repertoire))) // On lit chaque fichier du répertoire dans la boucle. { $chemin = $dossier_traite."/".$fichier; // On définit le chemin du fichier à effacer. // Si le fichier n'est pas un répertoire… if ($fichier != ".." AND $fichier != "." AND !is_dir($fichier)) { unlink($chemin); // On efface. } } closedir($repertoire);

Mammouth du PHP | 2703 Messages

02 avr. 2016, 20:28

cela script me parait faire ce qui est voulu.
il tourne longtemps mais des fichiers sont supprimés ou aucun ?
si aucun, j'ai un gros doute sur cette ligne :
$dossier_traite = "ROOT.'data/dossier/'.$nom.'/'";
voir si en la codant en dur pour commencer, c'est pareil.

Eléphanteau du PHP | 22 Messages

02 avr. 2016, 22:28

ok merci beaucoup
j'ai supprimé les doubles quotes dans mon chemin et ça marche

par contre existe t'il en php la possibilité d'une pause entre
deux commandes afin de laisser le temps a la première d'être réalisée
ou alors de tester la bonne exécution de la première avant de faire la deuxième

dans mon cas la deuxieme est un " header location " et quelque fois
le rafraichissement de la page est trop rapide

a+

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

03 avr. 2016, 10:16

Bonjour,
par contre existe t'il en php la possibilité d'une pause entre
deux commandes afin de laisser le temps a la première d'être réalisée
ou alors de tester la bonne exécution de la première avant de faire la deuxième

dans mon cas la deuxieme est un " header location " et quelque fois
le rafraichissement de la page est trop rapide
Oui, avec la fonction sleep()

En revanche la très grande majorité des commandes PHP sont exécutées les unes derrières les autres donc c'est peu probable que ton problème vienne de là, mais ça ne coûte rien de tester. ^^
Quand tout le reste a échoué, lisez le mode d'emploi...