Acá les dejo un ejemplo de código en PHP para hacerlo. El funcionamiento es sencillo:
- Se incluye el primero de los archivos (cache.start.php) encargado de verificar si existe el chache de la página a la que se ingresa y si sigue siendo válido. En ese caso mostrará el contenido "chacheado".
- Se genera el contenido HTML correspondiente sin importar las funciones de "cacheo".
- Se incluye el archivo final (cache.end.php) encargado de generar el cache de la página que servira para los sucesivos ingresos.
[*] "cache.start.php":
// Settings $cachedir = 'cache/'; // directorio de cache $cachetime = 86400; // duración del cache $cacheext = 'cache'; // extensión de cache // script a procesar $cachepage = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; $cachefile = $cachedir.md5($cachepage).'.'.$cacheext; // calculamos el tiempo del cache if (@file_exists($cachefile)) { $cachelast = @filemtime($cachefile); } else { $cachelast = 0; } @clearstatcache(); // Mostramos el archivo si aun no vence if (time() - $cachetime <$cachelast) { @readfile($cachefile); exit(); } ob_start();[*] "cache.end.php":
// Generamos el nuevo archivo cache $fp = @fopen($cachefile, 'w'); // guardamos el contenido del buffer @fwrite($fp, ob_get_contents()); @fclose($fp); ob_end_flush();[*] Implmentación:
include("cache.start.php"); // Aqui el código HTML include("cache.end.php");Saludos y que lo disfruten!
0 comentarios:
Publicar un comentario