Calcular el tiempo de ejecucion de un script

Una de las tareas mas entretenidas de un desarrollador es la de intentar optimizar el codigo para hacerlo mas efectivo y en en la mayoria de casos lo que se busca es que un mismo script tarde menos tiempo en ejecutarse.

Es por ello que es muy útil tener claro como poder medir el tiempo que tarda nuestro código al ejecutarse para poder realizar comparaciones cuando realizamos cambios en el mismo con el objetivo de mejorar los tiempos de proceso de información.

Para realizar estas mediciones haremos uso de la función microtime de PHP junto con la función bcsub para poder realizar la resta de los datos que tendremos (que serán de precisión arbitraria).

Éste es el codigo que podemos usar para comprobar cuanto tarda nuestro codigo en ser ejecutado:

$inicio = microtime(true);
 
/* Aqui el codigo PHP que queremos analizar */
 
$fin = microtime(true);
$tiempoejecucion = bcsub($fin, $inicio, 4);
 
echo "El script se ha ejecutado en " . ($tiempoejecucion);

Si detallamos el código, lo primero que haremos es llamar a la funcion microtime con el parametro "get_as_float" a true, de tal manera que el valor que nos devolverá será un numero float.

Una vez disponemos de ese valor, podemos poner nuestro codigo a testear. Seguidamente, volvemos a coger el valor de microtime justo después de la ejecución, y con la funcion bcsub realizamos el calculo de resta de numeros arbitrarios, indicando que queremos el resultado con 4 decimales para tener ese nivel de preción.

Ya solo nos queda ejecutar nuestro código, e ir mirando los tiempos de ejecución cada vez que hagamos modificaciones para intentar optimizar el mismo.

NOTA: éste codigo sólo es válido para PHP en su version 5 y posteriores. Para versión 4 la función microtime tiene un comportamiento algo distinto y se debe calcular de otro modo.

No hay comentarios:

Publicar un comentario