Fonction récursive lister répertoire FTP

Résolu
Bedave Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Bedave Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je cherche une fonction php qui puisse lister tous les répertoires, sous répertoires et fichiers d'un répertoire via FTP.

Je ne trouve que des idées permettant de lister un répertoire (et seulement lui), ce que je parviens à faire, mais rien qui permette de voir l'intégralité d'un répertoire. Il s'agit de récursivité.

L'idée de départ est de scanner un répertoire, d'y repérer les fichiers, de voir à quelle date ce fichier a été modifié, et envoyer un email si la dernière modification date de plus de deux jours. C'est une machine à vérifier que les sauvegardes de sécurité (avec Cobian) se font bien.

Quelqu'un aurait-il un exemple de script à me donner ?

Merci.
A voir également:

1 réponse

Bedave Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Je me réponds à moi même :
<?
function recursiveDirectories($repertoire){
$conn_id = ftp_connect("********.net");
ftp_login($conn_id,"david","**********");
$element = ftp_nlist($conn_id, $repertoire);
$compteur=count($element);//echo"VERIF compteur : $compteur<br>";
for($i=0;$i<=$compteur-1;$i++){
$cible=$element[$i];
$res = ftp_size($conn_id,$element[$i]);//echo"VERIF res : $res<br>";
$cible=$element[$i];
if($res=="-1"){
recursiveDirectories("./$cible");
}
else{
$time_modif=ftp_mdtm($conn_id, $cible);
$intervalle=mktime()-$time_modif;
if($intervalle>=172800){
echo "Fichier vieux de plus de deux jours: $cible $intervalle<br>";
}
if($intervalle<172800){
echo "Fichier récent : $cible<br>";
}
}
}
}
recursiveDirectories('.');
?>

Et ça tourne.
0