PHP función empty(): Comprobar si una variable está vacía

La función empty() nos permite comprobar una variable para saber si está vacía o no.

Sintaxis

boolean    empty ( variable )

 

Descripción

Mediante la función empty() podremos saber si una variable está vacía, de esta forma podremos evaluar las variables antes de tratarlas y así evitar posibles errores o comportamientos no deseados por parte de nuestro script.

Una variable se considera vacía si no tiene ningún valor asigado o si contiene la cadena vacía («»), una cadena que sea igual a 00«), NULL, FALSE o un array vacío.

Desde la versión 5.5 de PHP empty() también soporta expresiones.

 

Ejemplos

Ejemplo1:

En primer lugar declaramos la variable «$variable» y le asignamos el vaclor «0» (cero).

Posteriormente utilizamos el condicional if() para, mediante la función empty() conocer si la $variable está vacía o no. Si está vacía o es 0, se ejecutará el código del if y en caso contrario el del else.

$variable = 0;
if (empty($variable)) {
    echo "\$variable está vacía o es 0";
} else {
    echo "\$variable no está vacía";
}

 

Ejemplo2:

En este segundo ejemplo vamos a utilizar la función empty() para compar si un array está vacío.

Para ello, declaramos el primer array y le asignamos 2 valores. También declaramos un segundo array sin ningún valor.

Ahora, en la primera parte del ejemplo (primer if()), comprobamos que el $arreglo1 está vacío o no y mostramos el mensaje correspondiente.

En el segundo ejemplo haremos lo mismo con el $arreglo2.

$arreglo1 = array( 'uno', 'dos' );
$arreglo2 = array();
if ( empty( $arreglo1 )) {
    echo "El array \$arreglo1 está vacío.";
} else {
    echo "El array \$arreglo1 no está vacío porque tiene algún elemento.";
} 
echo "<br /><br />";
if (empty ($arreglo2 )) {
    echo "El array \$arreglo2 está vacío.";
} else {
    echo "El array \$arreglo2 no está vacío porque tiene algún elemento.";
}

Si ejecutamos este código, el resultado sería el siguiente:

El array $arreglo1 no está vacío porque tiene algún elemento.
El array $arreglo2 está vacío.