bueno josemi, probe un par de veces con el código de arriba
![de acuerdo](http://static.forosdelweb.com/fdwtheme/images/smilies/dedosarriba.png)
pero no lo pude hacer funcionar.
Pero tome la opción que me haz recomendado sobre usar el buffer y FUNCIONO!!! este es el código por su alguien lo necesita y si hay algo que se pueda mejorar me avisan:
buffer.php
Código PHP:
<?php
// tiempo tras el cual se "caducan" los fichero HTML
$tiempo = 30;
// directorio donde guardar los ficheros HTML o cachés
$dir = "/home/misitio/public_html/html";
function cache_abrir() {
global $tiempo,$dir;
// comprobar la existencia del fichero html y si aun es valido
if(file_exists($dir."/".$_GET['cid']."0.html") && time()-filemtime($dir."/".$_GET['cid']."0.html")<$tiempo)
{
// mostrar lo que hay en el html
include($dir."/".$_GET['cid']."0.html");
// terminar ejecución del script
exit();
}
// A partir de aquí no se devuelve nada, todo se escribe al buffer interno
ob_start();
}
function cache_guardar() {
global $html;
$dir = "/home/misitio/public_html/html";
// Obtiene el contenido del buffer
$html = ob_get_contents();
// Limpiar el buffer
ob_end_clean();
// abrir en modo escritura el fichero cache
$file = fopen($dir."/".$_GET['cid']."0.html","w+");
// escribir el contenido de $html en el fichero html
fwrite($file,$html);
// cerrar fichero
fclose($file);
}
?>
y ahora cuando necesitar generar en un html el resultado de algun codigo php hago esto:
Código PHP:
<?php
include("buffer.php");
// si la página html generada no expiró la imprime y cierra el script
cache_abrir();
// pero si ya expiró o aun no fue creeada ejecuta en codigo php
..... código php...
....más codigo...
..
.....etc etc etc..
// y después el recultado se lo manda a guardar...
cache_guardar();
//y aca lo imprime
echo $html;
?>
bueno eso es lo que hice y funciona bien para lo que yo necesito.
Igualmente me gustaría que alguien me diga que es lo que hice mal y que es lo que le falta al código que me paso "josemi" ya me estoy con ganas de hacerlo funcionar
![Afirmando](http://static.forosdelweb.com/fdwtheme/images/smilies/afirmar.gif)
para tener una alternativa más!
Listo espero que alguien me saque la duda con este código...
Saludos y gracias