<?php
error_reporting (E_ALL | E_STRICT); //filtrage des erreurs reportées
ini_set('display_errors', true); //affichage des erreurs
ini_set('html_errors', false); //désactivation des liens html dans les erreurs
ini_set('display_startup_errors',true); //affichage des erreurs de démarrage
ini_set('log_errors', false); //création d'un fichier de log
ini_set('error_prepend_string','<font color="red">'); //début mise en forme erreur
ini_set('error_append_string','<br /></font>'); //fin mise en forme erreur
ini_set('ignore_repeated_errors', true); //ignorer les erreurs répétées
$nb = 5000; // Nombre de fichiers a supprimé par salve, a régler en fonction des paramètres de votre hébergement
$dir = ''; // Lien direct vers le répertoire cache ex : /home/www/xoops_data/caches/smarty_cache
// Refaire l'opération pour chaque répertoire présent
$a = 0;
if ($handle = opendir($dir)){
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
if (unlink ($dir.'/'.$entry)) {
echo "$entryn";
}
$a++;
if ($a == $nb) {
closedir($handle);
die('fin');
}
}
}
closedir($handle);
}
echo 'fini';
Tu lance ce fichier autant de fois que tu as besoin, simplement via le FTP ou une fonction web il est impossible d'effacer 45 Go sans erreur.
Avant de lancer, tu répertorie tous les répertoires présents dans le cache, puis tu prend le premier chemin et tu modifies la ligne
$url = '';
par
$url = '/home/www/xoops_data/caches/smarty_cache';
Si tu as un message d'erreur genre temps d'exécution trop long tu réduit la valeur de nb (au dessus de l'url), j'ai mis 5000 mais tu peux descendre ou montée cette valeur. Tout dépend de la configuration de ton hébergement.
Attention c'est assez long (tout dépend de la valeur de nb), 30 secondes pour que la page s'affiche est facilement atteignable