depuración de código con php - grupo de procesamiento del lenguaje...
TRANSCRIPT
Depuración de código con PHP
Ramón Muñiz Sánchez
2
INDICE
Introducción.
Funciones internas de PHP.
Funciones externas de PHP.
Referencias
Fin
3
Introducción
Al programar en cualquier lenguaje de programación se pueden cometer errores.
La mayoría de las veces, suelen ser errores de fácil solución.
Aunque a veces,no tienen solución trivial y necesitamos conocer los valores de nuestras variables para corregirlo.
4
Introducción
Para ello existen dos tipos de “herramientas” de depuración.
En este caso vamos a clasificarlas en dos conjuntos.– Herramientas proporcionadas por el lenguaje.– Funciones externas.
5
Funciones internas de PHP
Son aquellas funciones que proporciona PHP que se pueden usar para depurar código.Estas funciones permiten conseguir información sobre las variables que usamos:– print ().– print_r().– var_dump().– gettype()– is_string(),is_integer(),is_array(),etc.
6
print();– Función que añade datos a la respuesta HTML del
script.– Podemos usarla para generar código HTML con
datos de nuestras variables.– Uso:
print (“$nombre_variable”)
7
print_r
Función que imprime información sobre una variable
Uso:– print_r ($variable,[bool devolver])
$variable: variable a mostrar
bool devolver: si es true, devuelve la salida y a false, la imprime
8
var_dump()
Devuelve el tipo de la variable y su contenido
Uso:– var_dump($variable);
9
gettype ()
Instrucción que devuelve una cadena con el tipo de la variable que le pasemos.
Uso:– gettype($variable)
10
is_string(),is_integer(),is_array(),...
Funciones equivalentes a gettype().
Mayor velocidad que gettype().
Devuelven true si son del tipo especificado
is_integer(),is_int(), is_bool(),is_float(),
is_double(),is_array(),is_string(),etc...
Uso:– is_string($variable)
12
Funciones externas de PHP
Estas funciones aumentan la capacidad de depuración, permitiendo comprobar los scripts sin necesidad de mostrar datos en HTML.
Algunos de ellos:– APD– Gubed– Xdebug– ZendStudio
13
APD
Conjunto de funciones que realizan trazas de los scripts.
Es necesario instalar la librería en el servidor.
Funciona haciendo llamadas a las funciones implementadas por la librería.
Multiplataforma.
Gratuito
14
APD. Uso(I)
1. apd_set_pprof_trace(); Función que inicia la depuración del script.
2. Ejecución del script.
3. Revisión del fichero “apd.dumpdir/pprof_pid.ext.”
15
APD.Uso (II)
Resultado de usar APD
16
Gubed
Programa de depuración de PHP
Necesita un servidor con PHP.
Existe una implementación como plugin de Mozilla
Permite depuración interactiva.
Gratuito.
Multiplataforma.
17
Gubed. Uso
Ejecución de script dentro del programa
Posibilidad de colocar paradas de ejecución.
Ejecutar paso a paso o por bloques el codigo.
Mostrar valores de las variables.
18
Gubed.Ejemplo
19
Xdebug
Extensión que permite la traza de las llamadas a funciones.
Es necesario instalación en servidor PHP
Muestra los resultados de la depuración en HTML.
20
Xdebug. Uso
xdebug_start_trace(); Función para iniciar la traza.
Añadir funciones de Xdebug que devuelvan datos sobre el script.
Ejecutar script en navegador.
Muestra el resultado de la traza en HTML o en fichero de texto.
21
Xdebug.Ejemplo
Ejemplo depuración en HTML
Ejemplo depuración en fichero de texto
22
ZendStudio
IDE de desarrollo PHP.
Incorpora su propio depurador.
No necesita instalar nada en el servidor.
No necesita añadir código adicional al script.
23
ZendStudio. Uso
En el mismo IDE, se ponen los puntos de parada de la ejecución.
Se van pulsando los botones de arriba/abajo para ir pasando la ejecución.
Se muestran los valores de las variables y el tipo que son.
25
Referencias
Manual PHP en hospedajesydominios.com
ZendStudio
Gubed
Xdebug
APD
26
Fin
¿Preguntas?