Page 1 sur 1
supprimer un répertoire plein
Posté : 23 août 2005, 12:31
par xgregx
Bonjour,
J'aimerai supprimer un répertoire plein mais la fonction rmdir() ne me permet pas de le faire, comment puis-je faire?
Merci d'avance.
Posté : 23 août 2005, 12:32
par ouckileou
tu le vides
ou tu fais un
exec('rm -r rpertoire');
Posté : 23 août 2005, 15:07
par mere-teresa
Sachant que le exec() n'est pas toujours possible selon hébergement.
Posté : 23 août 2005, 17:44
par Bobulum
Avec des unlink successifs ca ne marcherait pas?
Posté : 23 août 2005, 18:00
par Xenon_54
Bonjour,
Premier commentaire de la documentation PHP sous la fonction rmdir():
Here's a short function I wrote to remove a directory and all it's contents using the glob() function:
function rmdirr($dir) {
if($objs = glob($dir."/*")){
foreach($objs as $obj) {
is_dir($obj)? rmdirr($obj) : unlink($obj);
}
}
rmdir($dir);
}
Posté : 24 août 2005, 10:25
par xgregx
Merci pour vos suggestions...
Voici ma solution:
if (is_dir($path)){
$dir = opendir($path);
while ($f = readdir($dir)) {
if(is_file($path.$f)) {
unlink ($path.$f);
}
else {}
}
closedir($dir);
rmdir($path);
}
Posté : 25 août 2005, 00:20
par Xenon_54
Bonjour,
Comment fais-tu pour supprimer un répertoire s'il contient d'autres répertoires? rmdir() retournera une erreur si tu ne supprimes pas complètement le contenu du répertoire.