PHP script om lege mappen te verwijderen van FTP
ik probeer een script te schrijven waarmee ik een map uitlees op een ftp server. De map /intranet wil ik uitlezen doormiddel van een glob functie.
Dit lukt allemaal wel alleen nou wil ik in dat script doormiddel van een glob functie de directory /intranet uitleest en dan lege mappen en submappen verwijderd en mappen die bestanden of andere folders bevatten niet te verwijderen. Ik heb wel wat scripts gevonden die hele directorys verwijderen maar dat is absoluut niet de bedoeling. Ik hoop dat jullie me een setje in de goeie richting kunnen geven.
Ik heb een scriptje geschreven:
Source:
http://private.xxx.nl/projects/scripts/directorycleaner/index.phps
Voorbeeld:
http://private.xxx.nl/projects/scripts/directorycleaner/
Gewijzigd op 02/03/2012 14:13:36 door B a s
bedankt voor de snelle reply en het script. Ik ben hem even aan het testen.
Het valt me op dat je de glob functie niet gebruikt en daardoor kan ik niet de hele directory uitlezen. Wel de eerste map /intranet. Ik heb in die map een lege map gemaakt test. Deze word niet verwijderd als ik het script start. Hij word wel gelijk zichtbaar. Enig idee wat ik fout doe?
Ik heb een functie gemaakt: OnEmpty( $Dir )
Deze functie wordt aangeroepen als een map leeg is. Wat jij dus in deze functie moet zetten is dus:
rmdir( $Dir );
Dan zal het er zo uitzien:
function OnEmpty( $Dir )
{
echo '<strong>Leeg: ' . $Dir . '</strong><br />';
rmdir( $Dir );
}
Maar hoe zorg ik ervoor dat hij verder dan 1 map komt en de hele directory uitleest?
$nested_max = 1;
Als je die op 10 zet zal hij 10 mappen diep gaan
Sorry blond ;). Ik ga er even mee spelen. Ik ben je in ieder geval erg dankbaar voor de moeite ;)
Open: /www/htdocs/jbtech/jbtransport/intranet/intranet/test
Leeg: /www/htdocs/jbtech/jbtransport/intranet/intranet/test
Warning: rmdir(/www/htdocs/jbtech/jbtransport/intranet/intranet/test): Permission denied in /www/htdocs/jbtech/jbtransport/intranet/test33.php on line 10
kan het zijn dat ik ook nog een login moet verwerken? Om de ftp mogen te bewerken moet ik normaal wel inloggen. Het betreft wel een public html map.