Calcular el tiempo de carga de una página en PHP

Es posible que deseemos conocer el tiempo de carga de una página en PHP, entre otras cosas por saber si está tardando demasiado tiempo en mostrarse al usuario, una de las reazones más frecuentes para que el usuario abandone la web y busque el resultado en otro sitio.

Al principio del documento debemos calcular el tiempo en el momento que comienza a cargarse la página, para ello colocamos el siguiente código:

<?php
// Inicio del documento
// Calculamos segundos y microsegundos desde Epoch Unix
$tiempo = microtime();
// Separamos en un array el tiempo en segundos y en microsegundos
$tiempo = explode(» «,$tiempo);
// Sumamos segundos y microsegundos
$tiempo_inicial = $tiempo[0] + $tiempo[1];
?>

Al final de la página, volvemos a calcular el tiempo en ese momento y calculamos la diferencia entre ambos, imprimiendo el resultado por pantalla.

<?php
// Fin del documento
$tiempo = microtime();
$tiempo = explode(» «,$tiempo);
// Calculamos en tiempo al final del documento
$tiempo_final = $tiempo[0] + $tiempo[1];
// Calculamos en tiempo de carga
$tiempo_carga = $tiempo_final – $tiempo_inicial;
// Redondeamos el valor del flotante a tres decimales
$tiempo_carga = round($tiempo_carga,3);
echo «Pagina generada en {$tiempo_carga} segundos»;
?>

Con esto ya tendríamos calculado el tiempo de carga de una página en PHP. Esto puede ser de gran utilidad para generar tiempos de carga y enviar el resultado a un log o hacer que nos envíe un correo si se supera un determinado tiempo de carga.

4 comentarios en «Calcular el tiempo de carga de una página en PHP»

  1. Para enviar un mail cuando se supere un tiempo determinado de carga:
    $limite = 7; //Tiempo de carga máximo en segundos
    if ($tiempo_carga > 7) {
    $enviar_a = «mi@correo.com»;
    $asunto = «Superado tiempo de carga»;
    $msg = «La pagina {$_SERVER[‘PHP_SELF’]} ha»;
    $msg .= » tardado {$tiempo_carga} en ejecutarse»;
    mail($enviar_a,$asunto,$msg);
    }

  2. una preg.. porq aveces el tiempo de carga es de – tanto, (ej: -0.00145)
    Como puede ser esto? o porq sucede?

  3. He revisado el código y no obtengo resultados negativos en ningún caso, puedes darme más información sobre como lo estas usando y en que sistema opertivo?

  4. Que pasa salva, estaba buscando un codigo para calcular tiempo de carga en php y me aparece esto xD

    Ya tengo estudios y trabajo como programador Java para Netglobal

    Un saludo y espero que todo te vaya bien 😉

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *