[Tutorial] Comprimir página PHP

Tema en 'Webmasters' iniciado por Frank, 1 Jun 2008.

  1. Frank

    Frank
    Expand Collapse
    Administrador
    Administrador

    Mensajes:
    818
    Me Gusta recibidos:
    23
    [Tutorial] Comprimir página PHP

    Para aligerar el tiempo de carga de nuestras páginas generadas con PHP, podemos enviarlas al navegador comprimidas con GZip utilizando las funciones de control de salida, para ello, llamaremos a la funcion predefinida ob_gzhandler cómo tratante de la funcion ob_start, veamos un ejemplo:

    Código:
    <? 
    ob_start("ob_gzhandler"); 
    
    // Contenido de la página, puede contener 
    // tanto HTML cómo PHP 
    
    ob_end_flush(); 
    ?> 
    
    Tener en cuenta que todo el contenido debe estar en el lugar indicado por lo que los primeros carácteres del documento deben ser <? y los dos últimos ?> y no se debe añadir nada excepto donde se indica, si no vamos con cuidado recibiremos un error parecido al siguiente:

    Código:
    Warning: Cannot add header information... 
    Otra forma más completa todavía de compresion, consiste en aplicar la misma funcion, pero eliminando a su vez los espacios y saltos de linea de la fuente del documento, lo que no tendra ningun efecto visual pero disminuira el tiempo de descarga, veamos cómo hacerlo:

    Código:
    <? 
    ob_start(); 
    
    // Contenido de la página, puede contener 
    // tanto HTML cómo PHP 
    
    $cntACmp =ob_get_contents(); 
    ob_end_clean(); 
    $cntACmp=str_replace("n",' ',$cntACmp); 
    $cntACmp=ereg_replace('[[:space:]]+',' ',$cntACmp); 
    ob_start("ob_gzhandler"); 
    echo $cntACmp; 
    ob_end_flush(); 
    ?> 
    
    Este método funciona igual que el anterior solo que antes de comprimir elimina los saltos de linea y espacios innescesarios, pero debemos tener en cuenta las mismas precauciones o no funcionará.

    Autor: Eloi de San Martin Lagranje
    URL: http://www.programacionweb.net
     

Compartir esta página