Generar cache con php - genera paginas estaticas html

Esto es un sencillo código  que sirve mucho para generar paginas estáticas de contenido dinámico, lo cual nos permite una carga mas rápida, y menor uso de los recursos del servidor y mucho mas aun cuando es un hosting compartido.

Bueno pues lo primero que tenemos que hacer es crear 2 archivos php: cache.start.php y cache.end.php, en este post te dejamos el codigo que deberias poner en cada archivo, algo importante tenemos que crear un folder donde se va guardar los archivos creados .cache para el ejemplo se considera $cachedir = 'cache/'; // folder se llama cache.

A continuación los códigos correspondientes y la implementación, "recuerda que la implementación tienes que hacerlo encada pagina independientemente que deseas hacer cache"



[*] "cache.start.php": [code hl="1, 6, 10,19"] // 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(); [/code] [*] "cache.end.php": [code hl="1, 4"] // Generamos el nuevo archivo cache $fp = @fopen($cachefile, 'w'); // guardamos el contenido del buffer @fwrite($fp, ob_get_contents()); @fclose($fp); ob_end_flush(); [/code] [*] "Implementacion": [code hl="2"] include("cache.start.php"); // Aqui el código HTML include("cache.end.php"); [/code]
Con la tecnología de Blogger.