# Articulos

Buscar:

PAGINACIÓN:

> Diferencias entre empty() e isset()

A la hora de comprobar el estado de una variable (si está vacía, 'seteada', etc.), suelen surgir dudas.

Por ejemplo, para comprobar si un campo de un formulario llamado "NombreCampo" capturado por POST ($_POST['NombreCampo']) se ha rellenado o si está vacío, podemos llegar a dudar sobre cual funcion es más aconsejable.

Mediante este pequeño ejemplo trataré de disipar las posibles dudas:

<?php

$blah = '';

if (empty($blah)) echo 'Empty -> true <br />';
else echo 'Empty -> false <br />';
if (isset($blah)) echo 'Isset -> true <br />';
else echo 'Isset -> false <br />';

echo ' <br /> <br />';
unset($blah);

if (empty($blah)) echo 'Empty -> true <br />';
else echo 'Empty -> false <br />';
if (isset($blah)) echo 'Isset -> true <br />';
else echo 'Isset -> false <br />';

?>


Primero utilizamos la variable $blah con valor vacío '', y posteriormente la destruimos mediante la función unset() y pasamos el test de nuevo. Los resultados serían:

Empty -> true
Isset -> true

Empty -> true
Isset -> false


Por lo tanto, empty() nos devolverá si la variable está vacía o no (en nuestro ejemplo tanto cuando se le asignaba un valor vacío, como cuando se "destruía", devolvía "true", dado que no tiene en cuenta si está o no creada), y en cambio, isset() nos devolverá "true" si la variable está creada, tenga o no contenido y false en caso contrario.

Espero que haya quedado un poquito más claro  ;)



Escrito por: ToRDeN @ 04/04/2008 (17:02) ~ [ComentarComentar (1 comentarios y 197 lecturas)]
Categoría: Tutoriales, PHP Tags: php, tutorial, minitutorial, empty, isset, diferencias

Hay 1 comentario(s) referentes al artículo

lpucxsitjjrkroxjgwoawdvadzayod

[#1] Escrito por Nick (19/08/2008)


Tu nick: