Cela ressemble à une belle mise en cache
( tombe bien je rénovait ma mienne en ce moment )
Code :
- @ob_start("ob_gzhandler" ); // debut tampon
- //Ton output html table ici
- $donnees=ob_get_contents();
- EcrireLeFichier($chemin_vers_fichier_cache,$donnees); // écriture du fichier
- ob_clean();// détruit ton tampon ( utile si tu souhaite faire différentes parties de tes pages )
- // A la lecture
- if(filemtime($cache)>=$timestamp_expiration)// Lecture du fichier
- else // Mode Normal, il calcule ton fichier et recrée ton fichier cache
|
Restent 36.000 façons de procéder avec le cache, il s'agit ici de ma version largement simplifiée
perso je crée un fichier "Perf.Log" pour vérifier si jamais un truc patine trop, mes dates d'expiration sont variables, utilisation d'une globale pour ne jamais lancer la fonction, ou la forcer, ou détruire le fichier de cache
Le Must reste d'en faire une belle fonction avec 5 paramètres
ce code reste approximatif, après il faut traiter distinctement, si l'user a fait un post, on ne lit pas le cache !!
aussi garder en mémoire que certains paramètres ( expiration du cache, certaines clés en $_GET ne lanceront pas la fonction )
pour l'expiration je recommande que ce timestamp corresponde à la dernière modification de ton truc, soit de ton fichier, soit de l'enregistrement SQL que tu souhaites traiter
( ex : pour un forum, ce sera la dernière date de modification d'un thread )
Message édité par grosbin le 11-09-2008 à 13:24:34
---------------
Photos Panoramiques Montagnes Haute Savoie