nargy a écrit :
Tu dois parcourrir tous les réperttoires du site, récursivement. Tu peut faire ça soit en utilisant les fonctions opendir, readdir, closedir, soit glob pour lister les fichiers d'un répertoire, la fonction is_dir te dira s'il s'agit d'un répertoire sur lequel continuer la récursion s'il ne s'agit pas d'un répertoire commençant par '.' (répertoire courant, parent, et cachés). Tu utilise ensuite la fonction filemtime pour connaître la date de dernière modification des répertoires et fichiers. La fonction récursive calcule et renvoie la date maximum.
Comme cette opération sera certainement lente, surtout s'il y a beaucoup de fichiers, et comme tu affiche la date de modification avec seulement 1 jour de précision, cette date n'a pas à être calculée à chaque demande de page. La solution est de garder la date calculée dans un fichier texte par exemple, de recalculer cette date si le fichier texte est vieux de plus de 24 heures avant d'afficher la valeur. Ainsi, le fichier texte sera recalculé 1 seule fois par jour, il faudra donc le décompter de la fonction de calcul pour qu'il ne modifie pas la dernière date de modification à lui tout seul. Pour créer/modifier un fichier texte derrière le serveur, tu dois t'assurer que le serveur a les droits en écriture sur le fichier, puis tu utilise http://php.net/file_put_contents et file_get_contents.
|