Blog de Gonzalo

PROBLEMA CON ISSET

En php hay una función que se llama isset que te dice si la variable que se le pasa por parámetro está definida. Si la variable está definida devuelve TRUE y si no está definida devuelve FALSE. El problema está cuando hay una variable que está definida y su valor es NULL. En este caso isset devolverá FALSE y esp no es correcto.
Para evitar errores de este tipo existe la función get_defined_vars. Veámoslo en un ejemplo:


$mi_variable = NULL;

if (isset($$mi_variabl)) // devuelve false

$mi_variable = NULL;
$mis_variables = get_defined_vars();
if (array_key_exists('mi_variable', $mis_variables)) // devuelve True

Compartir en twitter