Cómo debuggear una aplicación PHP sin usar var_dump

Cómo debuggear una aplicación PHP sin usar var_dump

Cómo hacer para...
Una de las tareas que más tiempo consume durante el desarrollo de una aplicación (web o no) es el debugging. Ese momento en que estás seguro de que todo anda bien, pero por las dudas... hay que probarlo. Y, como siempre, algo no sale exactamente como esperabas. Es entonces cuando te toca arremangarte, buscar una nueva taza de café, silenciar el teléfono y hurgar. El modo común de encarar esta tarea en el universo php es usar mucho la función var_dump (Algo bastante feo de lo que hablo en más detalle en mi libro). Asumiré que ya sabés de qué se trata xdebug, que ya está instalado y configurado en tu entorno y que estás familiarizado (un poco al menos) con PhpStorm. Desde dentro del IDE podés lanzar tu aplicación usando el botón…
Leer más
Cómo debuggear un script de CLI con XDebug y PhpStorm

Cómo debuggear un script de CLI con XDebug y PhpStorm

Cómo hacer para...
Es muy común (al menos a mi me pasa muy seguido :)) encontrarse con la necesidad de escribir scripts que deberán ser ejecutados por la línea de comandos (Por ejemplo, cronjobs) dentro del contexto de una aplicación web. Hasta hace poco tenía muy claro cómo debuggear un script que ejecutaba a través del webserver, pero no había logrado (y francamente, no creía que fuera posible) debuggear un script que corría desde el CLI. Buscando un poco (y haciendo algo de prueba y error) finalmente lo logré. Si usás PhpStorm (y si no lo hacés aún, te lo recomiendo ampliamente) estos son los pasos que deberás seguir: Para empezar, asegurate de tener XDebug o ZendDebugger instalado en el entorno donde vas a correr tu script (En mi caso, usé una máquina virtual…
Leer más

Un ejemplo de máquina virtual lista para PHP+Symfony2+XDebug

Ejemplos
Charlando con algunos amigos desarrolladores php surgió un tema que les estaba resultando complicado, así que decidí poner mi pequeño granito de arena (para ellos y para otros que tal vez estén pasando por lo mismo). Ya habíamos hablado del por qué usar una máquina virtual para proyectos PHP. Ya estaba claro que usar un framework es más conveniente que no usarlo (independientemente de cuál fuera) y les había comentado sobre mis herramientas favoritas de automatización (Ansible y Vagrant). Todos estábamos de acuerdo "en la teoría", pero a la hora de pasar a la práctica se veían algo frustrados por no poder lograr tener una máquina virtual que fuese fácil de usar y que soportara, entre otras cosas, el uso de XDebug. Lo que te voy a mostrar a continuación son los archivos…
Leer más