Programación con PHP 5 – 2.4.2.3 empty

Función empty

La funcion empty($variable) evalúa el valor Booleano de la variable y devuelve a su vez un valor Booleano.

Devuelve TRUE en estos casos :
– la variable NO existe.
– la variable existe y NO ha sido inicializada.
– la variable al convertirse a Booleano da un valor FALSE.

y devuelve FALSE en este caso :
– la variable existe y ha sido inicializada con un valor que al convertirse a Booleano da un valor TRUE.

El valor Booleano de una variable se obtiene de la sgte tabla :

Tipo dato Es Falso Es verdadero
Entero Valor 0 (cero) Cualquier otro valor
Flotante Valor 0.0 Cualquier otro valor
String Valor "0", "" (vacía) Cualquier otro valor
arreglo Si no tiene ningún elemento Si tiene al menos un elemento
NULL Siempre Nunca

Más detalles sobre el tipo NULL.
Volviendo al ejemplo de los exponentes, NO puedes reemplazar empty por isset, porque no se podría tener un valor cero como elemento del array $exponentes, porque empty devolvería TRUE si se usa la línea 1 o la 2, cuando lo que se necesita es diferenciar ambos casos.

$nroDecimal=0;
$exponentes=array(0);  //linea 1
//$exponentes=array(); //linea 2
//Empty dara TRUE cuando $exponentes no tenga elementos.
if (!empty($exponentes[0])){
//codigo a ejecutar
}

Prueba el sgte bloque de código para que tengas más detalle.

$var1;

$var2=2;

$var3=NULL;
//No es lo mismo que $var3 ='x00', porque este es un caracter mas
//'x00' pertenece a los caracteres de escape y solo tiene significado
//cuando es leido por un browser o escrito en un archivo

$var4="0";

$var5 ="";

$var6=0;

$var7 =0.0;

$var8 = array();

$var9 = array(0);

echo"<br>";
echo "Valores devueltos con isset : <br>";
echo "==================================";
echo"<br>";

//Variable inexistente
if (isset($var))
 echo "Var inexistente : es true";
else
 echo "Var inexistente : es false"; //salida

echo"<br>";
//Variable sin inicializar
if (isset($var1))
 echo "Var sin inicializar : es true";
else
 echo "Var sin inicializar : es false"; //salida
echo"<br>";
//Variable inicializada
if (isset($var2))
 echo "Var inicializada : es true";//salida
else
 echo "Var inicializada : es false";

echo"<br>";
//Variable con valor NULL
if (isset($var3))
 echo "Var con valor NULL : es true";
else
 echo "Var con valor NULL : es false";//salida

echo"<br>";
//Variable String con valor "0"
if (isset($var4))
 echo "Var String con valor 0 : es true";//salida
else
 echo "Var String con valor 0 : es false";

echo"<br>";
//Variable String vacia ""
if (isset($var5))
 echo "Var String vacia : es true";//salida
else
 echo "Var String vacia : es false";

echo"<br>";
//Variable entera con valor 0
if (isset($var6))
 echo "Var entera con valor 0 : es true";//salida
else
 echo "Var entera con valor 0 : es false";

echo"<br>";
//Variable flotante con valor 0.0
if (isset($var7))
 echo "Var flotante con valor 0.0 : es true";//salida
else
 echo "Var flotante con valor 0.0 : es false";

echo"<br>";
//Variable array sin inicializar(sin elementos)
if (isset($var8))
 echo "Var array sin inicializar(sin elementos)  : es true";//salida
else
 echo "Var array sin inicializar(sin elementos)  : es false";

echo"<br>";
//Variable array inicializada con un elemento (un cero)
if (isset($var9))
 echo "Var array inicializada con un elemento (un cero)  : es true";//salida
else
 echo "Var array inicializada con un elemento (un cero)  : es false";
echo"<br>";
echo"<br>";
echo "Valores devueltos con empty : <br>";
echo "==================================";
echo"<br>";

//Variable inexistente
if (empty($var))
 echo "Var inexistente : es true";//salida
else
 echo "Var inexistente : es false";

echo"<br>";
//Variable sin inicializar
if (empty($var1))
 echo "Var sin inicializar : es true";//salida
else
 echo "Var sin inicializar : es false";
echo"<br>";
//Variable inicializada
if (empty($var2))
 echo "Var inicializada : es true";
else
 echo "Var inicializada : es false";//salida

echo"<br>";
//Variable con valor NULL
if (empty($var3))
 echo "Var con valor NULL : es true";//salida
else
 echo "Var con valor NULL : es false";

echo"<br>";
//Variable String con valor "0"
if (empty($var4))
 echo "Var String con valor 0 : es true";//salida
else
 echo "Var String con valor 0 : es false";

echo"<br>";
//Variable String vacia ""
if (empty($var5))
 echo "Var String vacia : es true";//salida
else
 echo "Var String vacia : es false";

echo"<br>";
//Variable entera con valor 0
if (empty($var6))
 echo "Var entera con valor 0 : es true";//salida
else
 echo "Var entera con valor 0 : es false";

echo"<br>";
//Variable flotante con valor 0.0
if (empty($var7))
 echo "Var flotante con valor 0.0 : es true";//salida
else
 echo "Var flotante con valor 0.0 : es false";

echo"<br>";
//Variable array sin inicializar(sin elementos)
if (empty($var8))
 echo "Var array sin inicializar(sin elementos)  : es true";//salida
else
 echo "Var array sin inicializar(sin elementos)  : es false";

echo"<br>";
//Variable array inicializada con un elemento (un cero)
if (empty($var9))
 echo "Var array inicializada con un elemento (un cero) : es true";
else
 echo "Var array inicializada con un elemento (un cero) : es false";//salida
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s