La Función exists

La función exists devuelve TRUE si el elemento especificado (de un hash o un array) ha sido inicializado, incluso si el valor correspondiente es undef.

Una diferenciación interesante, especialmente cuando se trata de hashes es entre existencia y definición:

%a = (lunes=>1, martes=>2, miercoles=>3, jueves=>4, viernes=>5, sabado=>6, domingo=>7 );
$a{lunes} = undef;
if (defined($a{lunes})) { ... } # FALSE
if (exists($a{lunes})) { ... }  # TRUE

Casiano Rodríguez León
2011-04-15