Profiling PHP

  • Nov
  • 09

1 comentario! 171 palabras - 1 hits

Debugeando el php con xdebug

Cursos en www.aprendemas.com
¿Necesitas formación?

¿Patrocinamos tu web?

Siempre es una buena practica el controlar los tiempos de ejecución de nuestros scripts a medida que vamos avanzando en el proceso de programación.

Y que mejor manera de hacerlo que desde las propias entrañas del interprete.

En el caso de PHP, dispone de varias extensiones que se encargan de este cometido, dos de ellas son xdebug y APD (Advanced PHP Debugger).

Personalmente no he utilizado APD, puesto que aunque no me da ningún error de compilación no he sido capaz de obtener resultado alguno. En cambio xdebug presenta un informe totalmente detallado de la ejecución del script.

Aunque ninguna de ellas es parte integral del interprete, su instalación y funcionamiento es muy sencillo. Por ejemplo, para instalar xdebug,

  1. pecl install xdebug
  2. añadimos al php.ini las siguientes lineas
  1.  
  2.     zend_extension="/ruta/al/modulo/xdebug.so"
  3.     xdebug.profiler_enable = 1
  4.     xdebug.profiler_output_dir = "/tmp"
  5.  

Finalmente, para poder leer los informes, necesitamos algún programa que soporte el formato cachegrind, en linux tenemos kcachegrind, supongo que para el resto de SO existen soluciones similares.

1 comentario

  • Nov
  • 09

# Escrito por Armonth hace 9 meses, 2 semanas

Pues yo a finales de agosto tuve que ponerme con el mismo tema y aunque hay que hacer un par de apaños, el funcionamiento de APD no es nada despreciable :)


Escribe tu comentario

Puedes utilizar este formulario para escribir tu opinion sobre esta entrada, no existe ningun tipo de limitacion a la hora de enviar opiniones, tan solo sigue unas reglas basicas de cortesia y todos estaremos mas contentos.

Puedes identificarte utilizando OpenID, solo tienes que introducir tu URL OpenID en el siguiente campo y pulsar el boton de validar.





Instrucciones para los comentarios

El simbolo * indica que se trata de un campo obligatorio.

Este sitio usa Markdown junto con Smartypants para educar los textos, tambien esta disponible para los comentarios.

A continuación os muestro algunas de las equivalencias:

  • [enlace de ejemplo](http://example.com/) resulta enlace de ejemplo.
  • **Texto en Negrita**
  • _Italica_
  • > blockquote
  • > > nested blockquote
  • * Esto es un elemento de una lista desordenada (ul)
  • 1. Esto es un elemento de una lista ordenada (ol)

MC Puedes seguir las respuestas a tus comentarios con MyComments.